class PitchforkReviews::Album
Attributes
artist[RW]
best_new_album[RW]
genre[RW]
name[RW]
score[RW]
summary[RW]
url[RW]
Public Class Methods
scrape_pitchfork()
click to toggle source
# File lib/pitchfork_reviews/album.rb, line 4 def self.scrape_pitchfork albums = [] doc = Nokogiri::HTML(open("http://pitchfork.com/reviews/albums/")) doc.css(".review").each do |review| all_genres = [] all_artists = [] all_scores = [] album = self.new album.name = review.css(".title").text review.css("div.album-artist ul li").each do |a| all_artists << a.text end album.artist = all_artists.to_s.gsub('"', "").gsub('[', "").gsub("]", "") review.css("ul.genre-list.before.inline li").each do |g| all_genres << g.text end album.genre = all_genres.to_s.gsub('"', "").gsub('[', "").gsub("]", "") album.url = review.css(".album-link")[0]["href"] if review.text.include?("Best New Album") album.best_new_album = " ** Best New Album **" end page = Nokogiri::HTML(open("http://pitchfork.com#{album.url}")) album.score = page.css(".score-circle").text[0..2] album.summary = page.css("div.abstract").text.gsub("Â" , "").gsub("â" , "'") albums << album end albums end