The Python scripts below are what I and a few others use for torrenting
Linux ISOs. Combined they offer 90% of the functionality in Azureus without
the Java overhead, and coming in at around 1200 lines of code. Some scripts
make use of PythonUtils
PythonUtils is no longer used due to the author not writing valid code (eg 'os.apth.isdir()') and
not testing things before he distributes them.
See all the scripts in subversion.
README.txt: Documentation.
You should probably read this, hence the name.
btrss.py: RSS feed monitoring.
Will download a torrent based on expressed interests (regular expressions stored
in a text file).
cleartorrents:
Clears a torrent from a user's ~/torrents.list file (maintained by 'stop', below).
Appends downloaded torrent to ~/.fetched_files, moves 'expired' torrent to
expired directory (defined in common.py, below)
common.py: Setup module
for everything, lots of defines and shared function calls.
findexpired: Finds
and removes expired (> 15 day old, configurable) torrents. Should be
run from root's crontab.
launchmanyxml: Custom
front-end for LaunchMany, this emits XML and keeps track of upload/download
stats in a DBM file.
printlink: Allows users
to download a torrent without stopping it via the use of hardlinks.
showdownloads:
Shows what's being downloaded by others.
htmld:
Generates a webpage showing what's being downloaded, speeds, ratio, etc.
start: Starts torrents.
Keeps track of torrent hashes that have been downloaded and won't process them
without forcing (-f flag) the download. Can also fetch from URLs provided
users have a Netscape-compatible cookies file.
stop: Stops torrents. Can
also pause (-p/--pause) torrents or flat out delete torrents (-d/--delete flag).
Will escape unsafe shell characters for automation purposes, appends torrent
name to ~/torrents.list for automation purposes.
getfiles.sh: Client-side
script that will download torrents from one machine to another. Calls
cleartorrents on each torrent it processes.