xunlei 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
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