Giter Site home page Giter Site logo

ryanraw / autoremove-torrents Goto Github PK

View Code? Open in Web Editor NEW

This project forked from jerrymakesjelly/autoremove-torrents

0.0 1.0 0.0 419 KB

Automatically remove torrents according to your strategies.

Home Page: https://pypi.org/project/autoremove-torrents/

License: MIT License

Python 100.00%

autoremove-torrents's Introduction

Auto Remove Torrents

PyPI GithubActionsCI ReadTheDocs Coverage Codacy Downloads 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, 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 🌟 :)

Documentation: https://autoremove-torrents.readthedocs.io/en/latest/

Readme version in other languages: 简体中文.

Requirements

  • Python 2.7 or Python 3

We recommend you to use Python 3.6 or higher version of Python.

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
      remove: seeding_time > 1209600 or 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. Read the documents 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 --log=/home/jerrymakesjelly/autoremove-torrents/logs

The --conf indicates the path to the configuration file. The --log argument specifies the path to store the log files (Must be existed).

Screenshot

Screenshot

Changelog

Sat, 27 Apr 2024: Version 1.5.5.

  • Fix the compatibility issues in qBittorrent 4.5 and later. (#157) (#173) (#174) (#182) (#186) Thanks to @Siriussee!

We also fix the unittest workflow for the lastest qBittorrent. Thanks to @amefs!

More changelogs

TODO List

Depend on users' feedback. If you have any problem, please submit issues.

Click here to see the TODO List.

autoremove-torrents's People

Contributors

jerrymakesjelly avatar drawwon avatar vincent806 avatar sfwn avatar siriussee avatar amefs avatar libo26 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.