class TorrentFinder::Adapters::EztvAdapter
Constants
- SearchString1
Public Class Methods
name()
click to toggle source
name of the adapter
# File lib/torrent-finder/adapters/eztv_adapter.rb, line 10 def self.name "eztv" end
Public Instance Methods
list(page=0)
click to toggle source
list recently available torrent
# File lib/torrent-finder/adapters/eztv_adapter.rb, line 15 def list(page=0) url = page == 0 ? "https://eztv.ch" : "http://eztv.ch/page_#{page.to_s}" response = HTTParty.get(url) parse_html(response.body) end
search(terms)
click to toggle source
search and return available torrent
# File lib/torrent-finder/adapters/eztv_adapter.rb, line 22 def search(terms) agent = Mechanize.new agent.get 'https://eztv.ch' search_form = agent.page.form('search') search_form.SearchString1 = terms search_form.submit parse_html(agent.page) end
Protected Instance Methods
parse_html(doc)
click to toggle source
# File lib/torrent-finder/adapters/eztv_adapter.rb, line 32 def parse_html(doc) doc = Nokogiri::HTML(doc) if doc.is_a?(String) rows = doc.search(".forum_header_border") rows.collect do |row| name = row.search(".forum_thread_post .epinfo").first.text rescue nil url = row.search(".forum_thread_post .magnet").first["href"] rescue nil Torrent.new(name, url) end.select {|row| row.name && row.url } end