RSS+uTorrent+BTC for Automated torrent downloading

Want to tell uTorrent what to do via Ruby? Read on.

First, you need to enable the uTorrent local interface in the application. Then go install btc (instructions on

Make sure Ruby is installed. And get the rss gem:

gem install rss

Then create a file called rss.rb and throw this in there:

## START FILE rss.rb
require 'rss'
require 'open-uri'
require 'cgi'
# URL to your Tracker -- Mine looked like
# https:///rss.php?feed=dl&bookmarks=on&passkey=#{PASSKEY}
# Note you need to define this or I'll raise an exception on you!
# url = "https:///rss.php?feed=dl&bookmarks=on&passkey=#{PASSKEY}"
raise "Did you define the url?" unless defined?(url)
torrent_list = `btc list`
open(url) do |rss|
  feed = RSS::Parser.parse(rss)
  puts "#{} -- Title: #{}"
  feed.items.each do |item|
    puts "Item: #{item.title}"
    if torrent_list.include? item.title
      puts "Skipping torrent, already in uTorrent"
      puts "Downloading torrent #{item.title}"
      `btc add #{}`
## END FILE rss.rb

To test, simply run this at command line:

ruby rss.rb

To automate, add a job to your cron tab. From command line (Make sure to set the directory to the right location.):

crontab -e

Add a rule to run this script every minute:

* * * * * cd /Users/ephtoaster/torrenter/ && ruby rss.rb > runs.log

My whole crontab looks like:

* * * * * cd /Users/ephtoaster/torrenter/ && ruby rss.rb > runs.log

Leave a Reply

Your email address will not be published. Required fields are marked *