Class: GameReviews::Scraper
- Inherits:
-
Object
- Object
- GameReviews::Scraper
- Defined in:
- lib/game_reviews/scraper.rb
Constant Summary collapse
- @@games =
[]
Instance Attribute Summary collapse
-
#score ⇒ Object
Returns the value of attribute score.
-
#url ⇒ Object
Returns the value of attribute url.
Class Method Summary collapse
Instance Method Summary collapse
- #clear ⇒ Object
- #display ⇒ Object
-
#initialize(url, score) ⇒ Scraper
constructor
A new instance of Scraper.
- #scraper ⇒ Object
Constructor Details
#initialize(url, score) ⇒ Scraper
Returns a new instance of Scraper.
5 6 7 8 |
# File 'lib/game_reviews/scraper.rb', line 5 def initialize(url, score) @url = url @score = score end |
Instance Attribute Details
#score ⇒ Object
Returns the value of attribute score.
3 4 5 |
# File 'lib/game_reviews/scraper.rb', line 3 def score @score end |
#url ⇒ Object
Returns the value of attribute url.
3 4 5 |
# File 'lib/game_reviews/scraper.rb', line 3 def url @url end |
Class Method Details
.games ⇒ Object
12 13 14 |
# File 'lib/game_reviews/scraper.rb', line 12 def self.games @@games end |
Instance Method Details
#clear ⇒ Object
16 17 18 |
# File 'lib/game_reviews/scraper.rb', line 16 def clear @@games.clear end |
#display ⇒ Object
36 37 38 39 40 41 42 43 |
# File 'lib/game_reviews/scraper.rb', line 36 def display @@games.delete_if{|game| game..to_i < @score.to_i}.each_with_index do |game, i| puts " \n#{i+1}. #{game.title} \n Metascore: #{game.} Release Date: #{game.release_date} Link: #{game.link}\n \n" end end |
#scraper ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/game_reviews/scraper.rb', line 21 def scraper game_list = Nokogiri::HTML(open(self.url, 'User-Agent' => 'Chrome')) game_list.css("ol.list_products li.game_product").each do |game| @@games << GameReviews::Reviews.new({ :title => game.css("div.product_title a").text.strip, :metascore => game.css("div.metascore_w").text, :release_date => game.css("li.release_date span.data").text, :link => 'http://www.metacritic.com/' + game.css("div.product_title a").attribute("href").text }) end end |