class TorrentSearch::Trackers::KickAss::Scraper
Constants
- BASE_URL
- LIMIT
Public Class Methods
new(search_terms, options = {})
click to toggle source
# File lib/torrent_search/trackers/kick_ass/scraper.rb, line 11 def initialize(search_terms, options = {}) @search_terms = search_terms @options = options end
Public Instance Methods
search()
click to toggle source
# File lib/torrent_search/trackers/kick_ass/scraper.rb, line 16 def search search_results.map do |row| Torrent.new(row) end rescue Mechanize::ResponseCodeError [] end
Private Instance Methods
agent()
click to toggle source
# File lib/torrent_search/trackers/kick_ass/scraper.rb, line 49 def agent @agent ||= Mechanize.new { |agent| agent.user_agent_alias = 'Mac Safari' } end
limit()
click to toggle source
# File lib/torrent_search/trackers/kick_ass/scraper.rb, line 32 def limit @options.fetch 'limit', LIMIT end
page()
click to toggle source
# File lib/torrent_search/trackers/kick_ass/scraper.rb, line 36 def page @page ||= agent.get search_url end
search_append()
click to toggle source
# File lib/torrent_search/trackers/kick_ass/scraper.rb, line 45 def search_append "?field=seeders&sorder=desc" end
search_results()
click to toggle source
# File lib/torrent_search/trackers/kick_ass/scraper.rb, line 26 def search_results page.search('table.data tr').tap do |results| results.shift end.take(limit) end
search_url()
click to toggle source
# File lib/torrent_search/trackers/kick_ass/scraper.rb, line 40 def search_url terms = @search_terms.join("%20") [BASE_URL, terms, search_append].join "/" end