This tool will help manage tedious tasks in qBittorrent and automate them. Tag, categorize, remove Orphaned data, remove unregistered torrents and much much more.
Find a file
2021-12-08 09:23:49 -05:00
.github Update actions and dockerfile 2021-12-08 09:23:11 -05:00
config New FR: Add Share/Upload Limits to Tags 2021-11-28 13:55:55 -05:00
modules Improve logging 2021-12-01 17:53:14 -05:00
.dockerignore Improve logging 2021-12-01 17:53:14 -05:00
.gitignore Improve logging 2021-12-01 17:53:14 -05:00
Dockerfile Update actions and dockerfile 2021-12-08 09:23:11 -05:00
LICENSE Create LICENSE 2021-11-25 16:22:08 -05:00
qbit_manage.py Add "Retitled" to list for removing unregistered/down torrents 2021-12-08 13:32:25 +00:00
qbm_logo.png Add new logo 2021-11-30 15:02:48 -05:00
README.md Update README 2021-12-08 09:23:19 -05:00
requirements.txt Add scheduler. Breaking change: NEW REQUIREMENTS 2021-11-21 15:49:32 -05:00
VERSION Improve logging 2021-12-01 17:53:14 -05:00

qBit Management

GitHub release (latest by date) GitHub commits since latest release (by SemVer) Docker Image Version (latest semver) Github Workflow Status Docker Pulls Sponsor or Donate

This is a program used to manage your qBittorrent instance such as:

  • Tag torrents based on tracker URL and set seed goals/limit upload speed by tag (only tag torrents that have no tags)
  • Update categories based on save directory
  • Remove unregistered torrents (delete data & torrent if it is not being cross-seeded, otherwise it will just remove the torrent)
  • Automatically add cross-seed torrents in paused state. *Note: cross-seed now allows for torrent injections directly to qBit, making this feature obsolete.*
  • Recheck paused torrents sorted by lowest size and resume if completed
  • Remove orphaned files from your root directory that are not referenced by qBittorrent
  • Tag any torrents that have no hard links and allows optional cleanup to delete these torrents and contents based on maximum ratio and/or time seeded
  • RecycleBin function to move files into a RecycleBin folder instead of deleting the data directly when deleting a torrent
  • Built-in scheduler to run the script every x minutes. (Can use --run command to run without the scheduler)

Getting Started

Check out the wiki for installation help

  1. Install qbit_mange either by installing Python3 on the localhost and following the Local Installation Guide or by installing Docker and following the Docker Installation Guide or the unRAID Installation Guide.
  2. Once installed, you have to set up your Configuration by create a Configuration File filled with all your values to connect to your qBittorrent instance.

Usage

To run the script in an interactive terminal with a list of possible commands run:

python qbit_manage.py -h

Commands

Shell Command Docker Environment Variable Description Default Value
-r or--run QBT_RUN Run without the scheduler. Script will exit after completion. False
-sch or --schedule QBT_SCHEDULE Schedule to run every x minutes. (Default set to 30) 30
-c CONFIG or --config-file CONFIG QBT_CONFIG This is used if you want to use a different name for your config.yml. Example: tv.yml config.yml
-lf LOGFILE, or --log-file LOGFILE, QBT_LOGFILE This is used if you want to use a different name for your log file. Example: tv.log activity.log
-cs or --cross-seed QBT_CROSS_SEED Use this after running cross-seed script to add torrents from the cross-seed output folder to qBittorrent False
-re or --recheck QBT_RECHECK Recheck paused torrents sorted by lowest size. Resume if Completed. False
-cu or --cat-update QBT_CAT_UPDATE Use this if you would like to update your categories. False
-tu or --tag-update QBT_TAG_UPDATE Use this if you would like to update your tags and/or set seed goals/limit upload speed by tag. (Only adds tags to untagged torrents) False
-ru or --rem-unregistered QBT_REM_UNREGISTERED Use this if you would like to remove unregistered torrents. (It will the delete data & torrent if it is not being cross-seeded, otherwise it will just remove the torrent without deleting data) False
-ro or --rem-orphaned QBT_REM_ORPHANED Use this if you would like to remove orphaned files from your root_dir directory that are not referenced by any torrents. It will scan your root_dir directory and compare it with what is in qBittorrent. Any data not referenced in qBittorrent will be moved into /data/torrents/orphaned_data folder for you to review/delete. False
-tnhl or --tag-nohardlinks QBT_TAG_NOHARDLINKS Use this to tag any torrents that do not have any hard links associated with any of the files. This is useful for those that use Sonarr/Radarr that hard links your media files with the torrents for seeding. When files get upgraded they no longer become linked with your media therefore will be tagged with a new tag noHL. You can then safely delete/remove these torrents to free up any extra space that is not being used by your media folder. False
-sr or --skip-recycle QBT_SKIP_RECYCLE Use this to skip emptying the Reycle Bin folder (/root_dir/.RecycleBin). False
-dr or --dry-run QBT_DRY_RUN If you would like to see what is gonna happen but not actually move/delete or tag/categorize anything. False
-ll or --log-level LOGLEVEL QBT_LOG_LEVEL Change the ouput log level. INFO
-d or --divider QBT_DIVIDER Character that divides the sections (Default: '=') =
-w or --width QBT_WIDTH Screen Width (Default: 100) 100

Support

  • If you're getting an Error or have an Enhancement post in the Issues.
  • If you have a configuration question post in the Discussions.
  • Pull Request are welcome but please submit them to the develop branch.