youtubesearchresultscraper 0.0.4 → 0.0.5

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/CHANGELOG CHANGED
@@ -12,3 +12,6 @@
12
12
  0.0.4 2007-02-01
13
13
  Add error check for scraping of pagination.
14
14
  Fix scraping rule for html markup change of youtube.
15
+
16
+ 0.0.5 2007-02-16
17
+ Fix scraping rule for video_count, video_from, video_to
@@ -199,24 +199,25 @@ module Youtube #:nodoc:
199
199
  end
200
200
 
201
201
  def scrape_result_header
202
- @search_result.search("div[@id='sectionHeader']/div").inner_html
202
+ @search_result.search("div[@id='sectionHeader']").inner_html
203
203
  end
204
204
 
205
205
  def scrape_video_count
206
- video_count = scrape_result_header.sub(/.+of *(\d+)/m , '\1')
207
- raise "no video count" if video_count.empty?
206
+ video_count = scrape_result_header
207
+ raise "no video count" unless video_count.sub!(/.+Results \d+-\d+ of( | about )([0-9,]+)/m , '\2')
208
+ video_count.gsub!(/,/, '')
208
209
  video_count.to_i
209
210
  end
210
211
 
211
212
  def scrape_video_from
212
- video_from = scrape_result_header.sub(/Results *(\d+)-.+/m, '\1')
213
- raise "no video from" if video_from.empty?
213
+ video_from = scrape_result_header
214
+ raise "no video from" unless video_from.sub!(/.+Results (\d+)/m, '\1')
214
215
  video_from.to_i
215
216
  end
216
217
 
217
218
  def scrape_video_to
218
- video_to = scrape_result_header.sub(/Results.+-(\d+) *of.+/m, '\1')
219
- raise "no video to" if video_to.empty?
219
+ video_to = scrape_result_header
220
+ raise "no video to" unless video_to.sub!(/.+Results \d+-(\d+)/m, '\1')
220
221
  video_to.to_i
221
222
  end
222
223
 
@@ -116,9 +116,6 @@ module Youtube #:nodoc:
116
116
  @video_count = scrape_video_count
117
117
  @video_from = scrape_video_from
118
118
  @video_to = scrape_video_to
119
- raise "no video count" if @video_count == nil
120
- raise "no video from" if @video_from == nil
121
- raise "no video to" if @video_to == nil
122
119
 
123
120
  raise "scraping error" if (is_no_result != @videos.empty?)
124
121
 
@@ -202,23 +199,29 @@ module Youtube #:nodoc:
202
199
  end
203
200
 
204
201
  def scrape_result_header
205
- @search_result.search("div[@id='sectionHeader']/div[@class='my']").inner_html
202
+ @search_result.search("div[@id='sectionHeader']/div").inner_html
206
203
  end
207
204
 
208
205
  def scrape_video_count
209
- scrape_result_header.sub(/.+of *(\d+)/m , '\1').to_i
206
+ video_count = scrape_result_header.sub(/.+of *(\d+)/m , '\1')
207
+ raise "no video count" if video_count.empty?
208
+ video_count.to_i
210
209
  end
211
210
 
212
211
  def scrape_video_from
213
- scrape_result_header.sub(/Results *(\d+)-.+/m, '\1').to_i
212
+ video_from = scrape_result_header.sub(/Results *(\d+)-.+/m, '\1')
213
+ raise "no video from" if video_from.empty?
214
+ video_from.to_i
214
215
  end
215
216
 
216
217
  def scrape_video_to
217
- scrape_result_header.sub(/Results.+-(\d+) *of.+/m, '\1').to_i
218
+ video_to = scrape_result_header.sub(/Results.+-(\d+) *of.+/m, '\1')
219
+ raise "no video to" if video_to.empty?
220
+ video_to.to_i
218
221
  end
219
222
 
220
223
  def is_no_result
221
- @search_result.search("div[@class='body']").inner_html.include?('No Videos found')
224
+ @html.include?('No Videos found')
222
225
  end
223
226
 
224
227
  def check_video video
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.0
3
3
  specification_version: 1
4
4
  name: youtubesearchresultscraper
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.0.4
7
- date: 2007-02-01 00:00:00 +09:00
6
+ version: 0.0.5
7
+ date: 2007-02-16 00:00:00 +09:00
8
8
  summary: This gem provide function to scrape html of search result on youtube
9
9
  require_paths:
10
10
  - lib