xunlei 0.0.11 → 0.0.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +15 -1
- data/lib/xunlei/engine.rb +30 -10
- data/lib/xunlei/version.rb +1 -1
- metadata +16 -16
data/README.md
CHANGED
@@ -64,4 +64,18 @@ I am feeling lucky :)
|
|
64
64
|
|
65
65
|
Pass --help to see more tasks and options
|
66
66
|
|
67
|
-
xunlei --help
|
67
|
+
xunlei --help
|
68
|
+
|
69
|
+
Contributors:
|
70
|
+
-----------
|
71
|
+
|
72
|
+
Thanks following wonderful people for contributing to this project:
|
73
|
+
|
74
|
+
[@phil5](https://github.com/phil5)
|
75
|
+
|
76
|
+
Miscellaneous:
|
77
|
+
-----------
|
78
|
+
|
79
|
+
You might be also interested in this project:
|
80
|
+
|
81
|
+
Command line interface to linkz.im: [linkz_cli](https://github.com/forresty/linkz_cli)
|
data/lib/xunlei/engine.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# encoding: utf-8
|
1
2
|
require "watir-webdriver"
|
2
3
|
|
3
4
|
module Xunlei
|
@@ -34,6 +35,7 @@ module Xunlei
|
|
34
35
|
def dump_tasks
|
35
36
|
all_files = []
|
36
37
|
|
38
|
+
sleep 2
|
37
39
|
begin
|
38
40
|
all_files += process_current_page
|
39
41
|
end while next_page
|
@@ -138,16 +140,34 @@ module Xunlei
|
|
138
140
|
task_files = []
|
139
141
|
task_div.a(:class => "rwbtn ic_open").when_present.click
|
140
142
|
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
143
|
+
next_page_exists = false
|
144
|
+
begin
|
145
|
+
folder_list = @browser.div(:id => "rwbox_bt_list")
|
146
|
+
folder_list.wait_until_present
|
147
|
+
|
148
|
+
index = 0
|
149
|
+
folder_list.spans(:class => "namelink").each do |span|
|
150
|
+
s = span.spans.first
|
151
|
+
size = folder_list.input(:id => "bt_size#{index}").attribute_value('value')
|
152
|
+
task_files << { :name => s.title, :url => s.attribute_value('href'), :size => size }
|
153
|
+
index += 1
|
154
|
+
end
|
155
|
+
# to check if there is a next page
|
156
|
+
next_bt_link = @browser.a(:title => "下一页")
|
157
|
+
break unless next_bt_link.exists?
|
158
|
+
|
159
|
+
next_page_exists = next_bt_link.attribute_value("class") != "a_up"
|
160
|
+
@browser.execute_script next_bt_link.attribute_value("onclick")
|
161
|
+
time0 = Time.new
|
162
|
+
begin
|
163
|
+
if folder_list.spans(:class => "namelink").first.spans.first.title != @browser.div(:id => "rwbox_bt_list").spans(:class => "namelink").first.spans.first.title
|
164
|
+
break
|
165
|
+
end
|
166
|
+
rescue
|
167
|
+
break
|
168
|
+
end while next_page_exists && Time.now - time0 < 5
|
169
|
+
sleep 1
|
170
|
+
end while next_page_exists
|
151
171
|
|
152
172
|
go_back_from_bt_task
|
153
173
|
|
data/lib/xunlei/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: xunlei
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.12
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-04-07 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement: &
|
16
|
+
requirement: &70260136889200 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70260136889200
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rspec
|
27
|
-
requirement: &
|
27
|
+
requirement: &70260136888780 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70260136888780
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: simplecov
|
38
|
-
requirement: &
|
38
|
+
requirement: &70260136888360 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70260136888360
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: watir-webdriver
|
49
|
-
requirement: &
|
49
|
+
requirement: &70260136887940 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70260136887940
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: commander
|
60
|
-
requirement: &
|
60
|
+
requirement: &70260136887520 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70260136887520
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: nokogiri
|
71
|
-
requirement: &
|
71
|
+
requirement: &70260136887100 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,7 +76,7 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :runtime
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70260136887100
|
80
80
|
description: A browser script to access lixian.vip.xunlei.com tasks automatically
|
81
81
|
email:
|
82
82
|
- afu@forresty.com
|
@@ -116,7 +116,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
116
116
|
version: '0'
|
117
117
|
segments:
|
118
118
|
- 0
|
119
|
-
hash:
|
119
|
+
hash: -1510607744516824055
|
120
120
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
121
121
|
none: false
|
122
122
|
requirements:
|
@@ -125,7 +125,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
125
125
|
version: '0'
|
126
126
|
segments:
|
127
127
|
- 0
|
128
|
-
hash:
|
128
|
+
hash: -1510607744516824055
|
129
129
|
requirements: []
|
130
130
|
rubyforge_project: xunlei
|
131
131
|
rubygems_version: 1.8.11
|