Module: VericastIFPI
- Defined in:
- lib/vericast-ifpi.rb
Defined Under Namespace
Classes: Song
Constant Summary collapse
- BASE_URL =
'http://vericast.bmat.me/ifpi/search?lang=en'
Instance Method Summary collapse
Instance Method Details
#song_lookup(params) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/vericast-ifpi.rb', line 15 def song_lookup( params ) results, search_url = [], BASE_URL params.each { |p, v| search_url += "&#{p}=#{URI.encode(v)}" } page = Nokogiri::HTML( open(search_url).read() ) matches = page.xpath("//div[@class='info_search_head']/text()").inner_text().strip().match(/Found (.+) result/) if matches number_of_results = matches[1].to_i page.xpath("//table[contains(@class, 'table table-striped')]/tbody/tr").each do |tr| values = tr.xpath(".//td/text()").map { |e| e.inner_text().strip() } results << Song.new( values[0], values[1], values[2], values[3] ) end end results end |