Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
HTML Ruby

README.markdown

The Torrent API

What it does

The Torrent API brings torrent downloading to the ruby language. It allows for searching numerous torrent websites using an easy-to-use ruby DSL.

How it does it

Using Nokogiri or Hpricot, it takes a search term (and sometimes a category) and grabs the page and parses through the HTML to scrape the results, leaving you with just the most important information.

Usage

Search the default service (the pirate bay)

t = TorrentApi.new
t.search_term = 'james and the giant peach'
results = t.search

Query all torrent websites and work with those torrents

torrents = TorrentApi.new(:all, 'the royal tenenbaums')
torrent = torrents.first
torrent.name
=> "The.Royal.Tenenbaums.XviD.DVD-Rip"
torrent.seeds
=> 128
torrent.size # size is returned in bytes
=> 702840000.0

Torrent methods

:name, :seeds, :leeches, :category, :link, :magnet_link, :status, :size

Select a service to use and search

t = TorrentApi.new
t.service = :demonoid
t.search_term = 'james and the giant peach'
results = t.search

Shorthand query all

TorrentApi.new(:all, "james and the giant peach")`

Available services

  • TorrentReactor
  • The Piratey Bay
  • Demonoid

How to help

Add more torrent sites!

To do

  • Refactor all three search engines to use a shared torrent model
  • More search engines!
  • Need to add/remove dependencies - awesome_print and nokogiri
  • Improve the ability to select a category (I think it defaults to a movie category right now)
Something went wrong with that request. Please try again.