xunlei 0.0.5 → 0.0.6

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/bin/xunlei CHANGED
@@ -218,23 +218,26 @@ command :download do |c|
218
218
  c.description = "download all files in #{xunlei_tasks_path}"
219
219
  c.option "--only PATTERN", String, "only download files which names include PATTERN"
220
220
  c.option "--except PATTERN", String, "do not download files which names include PATTERN"
221
+ c.option "--reverse", "download files in reverse order"
221
222
 
222
223
  c.action do |args, options|
223
224
  options.default :only => nil, :except => nil
224
225
 
225
226
  files = filter_files(options)
226
227
 
228
+ files.reverse! if options.reverse
229
+
227
230
  if files.empty?
228
231
  puts "Nothing to do."
229
232
  else
230
233
  puts "\nAbout to download following files:"
231
234
  puts
232
- filter_files(options).each do |file|
235
+ files.each do |file|
233
236
  puts file[:name]
234
237
  end
235
238
 
236
239
  if agree("\nConfirm? (yes or no)")
237
- filter_files(options).each do |file|
240
+ files.each do |file|
238
241
  cmd = "wget --load-cookies=#{xunlei_cookies_path} '#{file[:url]}' -c -O \"#{file[:name]}\""
239
242
  if system(cmd)
240
243
  move_to_downloaded_file(file)
data/lib/xunlei/engine.rb CHANGED
@@ -9,6 +9,10 @@ module Xunlei
9
9
  @browser.text_field(:id => "u").when_present.set(username)
10
10
  @browser.text_field(:id => "p_show").when_present.set(password)
11
11
  @browser.button(:id => "button_submit4reg").when_present.click
12
+
13
+ # temp fix for stupid cloud VOD popup
14
+ wait_until_all_loaded
15
+ @browser.div(:class => "p_rw_pop p_sc_pop p_yuntips").p(:class => 'p_btm_aline').as.first.when_present.click
12
16
  end
13
17
 
14
18
  def dump_cookies
@@ -62,7 +66,7 @@ module Xunlei
62
66
  end
63
67
 
64
68
  def process_current_page
65
- get_task_list.divs(:class => "rw_list").inject([]) do |all_files, task_div|
69
+ get_task_list.divs(:class => "rw_inter").inject([]) do |all_files, task_div|
66
70
  all_files += process_task(task_div)
67
71
  end
68
72
  end
@@ -71,7 +75,9 @@ module Xunlei
71
75
  task_files = []
72
76
 
73
77
  task_div.wait_until_present
74
-
78
+
79
+ @browser.execute_script("document.getElementById('#{task_div.parent.id}').scrollIntoView()")
80
+
75
81
  if task_is_ready?(task_div)
76
82
  # puts "task is ready"
77
83
  task_div.click
@@ -95,7 +101,7 @@ module Xunlei
95
101
 
96
102
  def process_normal_task(task_div)
97
103
  normal_task_a = task_div.span(:class => "namelink").as.first
98
- task_id = task_div.id.gsub(/\D+/, "")
104
+ task_id = task_div.parent.id.gsub(/\D+/, "")
99
105
  normal_task_input = task_div.input(:id => "dl_url" + task_id)
100
106
  { :name => normal_task_a.text.gsub(/'|\\/,""), :url => normal_task_input.value, :size => task_div.span(:id => "size#{task_id}").text }
101
107
  end
@@ -1,3 +1,3 @@
1
1
  module Xunlei
2
- VERSION = "0.0.5"
2
+ VERSION = "0.0.6"
3
3
  end
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.5
4
+ version: 0.0.6
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: 2011-12-03 00:00:00.000000000Z
12
+ date: 2011-12-17 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
16
- requirement: &70300705578980 !ruby/object:Gem::Requirement
16
+ requirement: &70148914821960 !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: *70300705578980
24
+ version_requirements: *70148914821960
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rspec
27
- requirement: &70300705578560 !ruby/object:Gem::Requirement
27
+ requirement: &70148914821440 !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: *70300705578560
35
+ version_requirements: *70148914821440
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: simplecov
38
- requirement: &70300705578140 !ruby/object:Gem::Requirement
38
+ requirement: &70148914820920 !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: *70300705578140
46
+ version_requirements: *70148914820920
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: watir-webdriver
49
- requirement: &70300705577720 !ruby/object:Gem::Requirement
49
+ requirement: &70148914820380 !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: *70300705577720
57
+ version_requirements: *70148914820380
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: commander
60
- requirement: &70300705577300 !ruby/object:Gem::Requirement
60
+ requirement: &70148914819960 !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: *70300705577300
68
+ version_requirements: *70148914819960
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: nokogiri
71
- requirement: &70300705576880 !ruby/object:Gem::Requirement
71
+ requirement: &70148914819420 !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: *70300705576880
79
+ version_requirements: *70148914819420
80
80
  description: A browser script to access lixian.vip.xunlei.com tasks automatically
81
81
  email:
82
82
  - afu@forresty.com
@@ -115,7 +115,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
115
115
  version: '0'
116
116
  segments:
117
117
  - 0
118
- hash: 2684566908890057272
118
+ hash: -3735410626781629397
119
119
  required_rubygems_version: !ruby/object:Gem::Requirement
120
120
  none: false
121
121
  requirements:
@@ -124,7 +124,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
124
124
  version: '0'
125
125
  segments:
126
126
  - 0
127
- hash: 2684566908890057272
127
+ hash: -3735410626781629397
128
128
  requirements: []
129
129
  rubyforge_project: xunlei
130
130
  rubygems_version: 1.8.11