Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/blind-oracle/transmission-trackers

Script to automatically add trackers from a list to all torrents in Transmission
https://github.com/blind-oracle/transmission-trackers

script trackers transmission update

Last synced: 12 days ago
JSON representation

Script to automatically add trackers from a list to all torrents in Transmission

Lists

README

        

# transmission-trackers
Script to automatically add trackers from a list to all torrents in Transmission.
This allows to get more peers to download/upload from/to.

Features:
* Download lists of trackers from any number of URLs and cache them locally. The cache will only be updated after the specified time passes (e.g. once a day)
* Check if trackers obtained from remote URLs are resolvable in DNS
* Load additional local tracker lists
* Remove duplicates so that only unique hosts and IPs are used: if two or more URLs point to the same hostname or the hostname resolves to the same IP - only one URL will be loaded
* Optionally filter torrents by status (seeding, stopped etc)
* Compare the current tracker list of a torrent with the required one and only update Transmission if they don't match

Tracker list format:
* One tracker URL per line
* Empty lines are ignored
* Only `http[s]://` and `udp://` trackers are loaded (Transmission does not support WebSocket trackers AFAIK)

Requirements:
* Should work with both Python 2.7 and 3.x, although there may be problems with logging in Python2 due to different unicode handling, I don't want to fix that :)
* *transmissionrpc* Python module

Usage:
* Get *transmissionrpc*: ```pip[3] install transmissionrpc``` (or using any other method)
* Put the *transmission-trackers.py* script somewhere
* Make sure that the right Python interpreter is used (it's *python3* by default)
* Adjust the host/port/credentials to access the Transmission RPC inside the script
* Add your URLs and local files to the appropriate lists in the script
* Adjust other parameters if needed (see comments)
* Make the script run by cron e.g. every minute
* You're done

Cron Setup:
* Open Crontab using crontab -e
* For Updating Trackers to Every New Torrent Every 15 Minutes Add: */15 * * * * /usr/bin/sh [path]]/transmission-trackers-auto-cron.sh
* Modify the transmission-trackers-auto.sh file as per your needs. We have provided two options, transmission-daemon & docker