Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

A script that automatically temporarily bypasses qBittorrent's max active downloads limit to fetch metadata before re-queuing torrents.

License

NotificationsYou must be signed in to change notification settings

AdamWHY2K/qB-QueueMETA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Queue-Based Metadata Exception & Temporary Access Manager for qBittorrent

Python 3.8+License: AGPL v3

The intent is to automatically weed out queued torrents that would otherwise stall on metaDL, also useful displaying the size of all torrents in the queue

Personally using withdecluttarr andqbittorrent-totals

Demo

Before:

before_screenshot

During:

during_screenshot

After:

after_screenshot

Logs:

logs_screenshot

✨ Features

  • 🚀Metadata Priority Boosting - Temporarily bypass active download limits for metadata retrieval
  • ⚖️Queue Equilibrium - Automatically restores original queue positions post-metadata acquisition
  • 🔒API-First Design - Non-intrusive WebUI integration
  • ⏱️Configurable Polling - Adjustable check interval (default: 60s)
  • 📜YAML Configuration - Simple declarative setup
  • 🛡️Systemd Integration - Production-grade service management
  • 📊Verbose Logging - Detailed operational insights

📦 Installation

git clone https://github.com/AdamWHY2K/qB-QueueMETA.gitmv qB-QueueMETA /opt/cd /opt/qB-QueueMETApip install -r requirements.txt

⚙️ Configuration

nano config.yaml

Configuration Reference

KeyTypeDefaultDescription
hoststringRequiredqBittorrent WebUI endpoint (host:port)
usernamestring""WebUI authentication username
passwordstring""WebUI authentication password
intervalinteger60Polling interval in seconds
oncebooleanfalseSingle execution mode
verbosebooleanfalseEnable debug logging
verify_certificatebooleantrueSSL validation (May need to disable if using self-signed certs)

🚀 Usage

python3 qB-QueueMETA.py --config config.yaml [--host] [--username] [--password] [--interval]

🖥️ Systemd Service

sudo systemctl edit qB-QueueMETA --full --force
[Unit]Description=qB-Queueᴹᴱᵀᴬ - Metadata Exception & Temporary Access for qBittorrent torrents.After=network.target qbittorrent.serviceStartLimitIntervalSec=1dStartLimitBurst=10[Service]Type=simpleUser=qbittorrent-noxSyslogIdentifier=qB-QueueMETAWorkingDirectory=/opt/qB-QueueMETA/ExecStart=/usr/bin/python3 /opt/qB-QueueMETA/qB-QueueMETA.py --config /opt/qB-QueueMETA/config.yamlRestart=on-failureRestartSec=3600s[Install]WantedBy=multi-user.target
sudo systemctl start qB-QueueMETA.servicesudo systemctl status qB-QueueMETA.servicesudo systemctlenable qB-QueueMETA.service

🚨 Troubleshooting

# View service logssudo journalctl -u qb-queuemeta.service -f# Test qBittorrent API accessibilitycurl -v host:port/api/v2/app/preferences# Test configurationpython3 qB-QueueMETA.py --config config.yaml --verbose

🤝 Contributing

PRs welcome! Please follow:

  1. Fork repository
  2. Create feature branch (git checkout -b feature/amazing-feature)
  3. Add changes (git add .)
  4. Commit changes (git commit -m 'Add amazing feature')
  5. Push branch (git push origin feature/amazing-feature)
  6. Open PR

📜 License

This project is licensed under theGNU Affero General Public License v3.0.
This means:

  • You can use, modify, and distribute this software freely
  • You must disclose source code of any modified versions
  • Network services using this code must provide source to users
  • All derivative works must remain under AGPLv3

Full license text available inLICENSE file.

Disclaimer: This project is not affiliated with qBittorrent or its developers. Use at your own risk.


[8]ページ先頭

©2009-2025 Movatter.jp