Skip to main content

Automatically remove torrents according to your strategies.

Project description

PyPI TravisCI Coverage Codacy MIT

This program can help you to remove your torrents. Now you don’t need to worry about your disk space - according to your strategies, for each category and tracker, the program will check each torrent if it satisfies the remove condition; If so, delete it automatically.

This program supports qBittorrent/Transmission/渭Torrent. If you like, star it :sparkles: :)

Requirements

  • Python 3

That’s all. It’s a simple but smart program.

Quick Start

Installation

Install from pip

pip install autoremove-torrents

or

Install from GitHub

git clone https://github.com/jerrymakesjelly/autoremove-torrents.git
cd autoremove-torrents
python3 setup.py install

Write your configuration file

In order to satisfactory your needs, you have to learn how to write a configuration file.

You can put the configuration file anywhere on your disk. The autoremove-torrents looks for config.yml in the Shell’s current working directory:

vim ./config.yml

The grammar is quite easy, for example:

my_task:
  client: qbittorrent
  host: http://127.0.0.1
  username: admin
  password: adminadmin
  strategies:
    my_strategy:
      categories:
        - IPT
      seeding_time: 1209600
      ratio: 1
  delete_data: true

The program will delete those torrents whose categories are IPT, seeding time is above 1209600 seconds or ratio is greater than 1. Visit Wiki to learn more.

Run

autoremove-torrents

If you just want to see which torrents can be removed but don’t want to really remove them, use –view command line argument.

Setting up scheduled tasks

If you want to check whether there is any torrent can be removed every 15 minutes, the crontab can help you. Look at the example:

crontab -e

And then, add a line at the end of the file (please confirm the path of the autoremove-torrents and your program):

*/15 * * * * /usr/bin/autoremove-torrents --conf=/home/jerrymakesjelly/autoremove-torrents/config.yml

The conf= indicates the path to the configuration file.

Screenshot

Screenshot

Changelog

Mon, 10 Jan 2019: Version 1.2.5.

  • Fixed bug: Incorrect number of torrents in multiple strategies (Issue #10, thanks to @momokoo for the report and PR).

  • Fixed bug: Incorrect number of torrents in qBittorrent (Issue #13).

Thu, 31 May 2018: Version 1.2.4.

  • Fixed startup failure.

Wed, 30 May 2018: Version 1.2.3. Added new features.

  • Allowed to use environment variables to specify host, username and password.

  • Allowed username and password to be empty (or one of them is empty) to log in a WebUI without username and/or password.

  • Now the program won’t quit directly when a task goes failed.

Sun, 27 May 2018: Version 1.2.2. Added new features :smile:

  • Added new filter: Torrent Status

  • Added new condition: Maximum number of torrents

Sat, 26 May 2018: Version 1.2.1. Fixed issue in setup.py.

Sat, 26 May 2018: Version 1.2.0. Refactoring was completed, and was published to PyPI.

  • New features will be added soon.

  • Now we can install it via pip.

Mon, 14 May 2018: Version 1.1.0. Created setup.py.

You can now use the autoremove-torrents command directly instead of python3 main.py.

Wed, 28 Mar 2018: (Correct document) The delete_data field shouldn’t be indented.

Thu, 22 Mar 2018: First version :bowtie:

TODO List

Depend on users’ feedback.

  • Support Deluge and rtorrent in the future

  • Add remove condition: Disk free space

  • Add remove condition: Max/Min average UL/DL speed

If you have any problem, please submit issues.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

autoremove-torrents-1.2.5.tar.gz (13.1 kB view details)

Uploaded Source

File details

Details for the file autoremove-torrents-1.2.5.tar.gz.

File metadata

  • Download URL: autoremove-torrents-1.2.5.tar.gz
  • Upload date:
  • Size: 13.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

File hashes

Hashes for autoremove-torrents-1.2.5.tar.gz
Algorithm Hash digest
SHA256 f8ec4cc5fe03a509eba80e5e2f34c38e6fdc8181bba630ca7ebc6211e5846b75
MD5 4f8e48cbd1aceb91c3625d09e83a8979
BLAKE2b-256 c856f5dd6cfe395386113394a3d16e41ca5bd6a6842224c8cdfd0e95b8544d52

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page