Skip to main content

deluge-utilities

A set of utilities to help you work with Deluge and qBittorrent torrent clients.

Features

  • Unified interface for both Deluge and qBittorrent clients
  • Automatic detection and removal of duplicate torrents
  • Clean up extra files in torrent folders
  • Search and remove old torrents while keeping the newest version
  • Support for local or remote Deluge daemons and remote qBittorrent Web UI

Installation

pip install deluge-utilities

For development:

git clone https://github.com/GitBib/deluge-utilities.git
cd deluge-utilities
uv sync

Usage

Deluge Client

from deluge_utilities import Deluge

# Initialize Deluge client (connects to local daemon)
client = Deluge(
    username="your_deluge_username",
    password="your_deluge_password"
)

# Or connect to a remote daemon (defaults: host="127.0.0.1", port=58846)
remote = Deluge(
    username="your_deluge_username",
    password="your_deluge_password",
    host="192.0.2.10",
    port=58846,
)

# Get list of all torrents grouped by name
torrents = client.torrent_dict()

# Search and remove old duplicate torrents, keeping only the newest
client.old_torrent_search(dry_run=False)

# Check all torrents for extra files and remove them
client.torrent_check(dry_run=False)

# Get information about a specific torrent
torrent_info = client.get_torrent_info("torrent_id")

# Remove a specific torrent
client.remove_torrent("torrent_id")

qBittorrent Client

from deluge_utilities import QBittorrent

# Initialize qBittorrent client (connects to Web UI)
client = QBittorrent(
    host="localhost",
    port=8080,
    username="your_qbittorrent_username",
    password="your_qbittorrent_password"
)

# Get list of all torrents grouped by name
torrents = client.torrent_dict()

# Search and remove old duplicate torrents, keeping only the newest
client.old_torrent_search(dry_run=False)

# Check all torrents for extra files and remove them
client.torrent_check(dry_run=False)

# Get information about a specific torrent
torrent_info = client.get_torrent_info("torrent_hash")

# Remove a specific torrent
client.remove_torrent("torrent_hash")

Polymorphic Usage

Both clients implement the same interface, allowing you to switch between them easily:

from deluge_utilities import Deluge, QBittorrent

# Choose client based on configuration
client_type = "qbittorrent"  # or "deluge"

if client_type == "deluge":
    client = Deluge(username="admin", password="password")
else:
    client = QBittorrent(
        host="localhost",
        port=8080,
        username="admin",
        password="password"
    )

# Use the same methods regardless of client type
torrents = client.torrent_dict()
client.old_torrent_search(dry_run=False)
client.torrent_check(dry_run=False)

Metadata

Release files for deluge-utilities 0.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for deluge-utilities 0.0.6
File Size Uploaded
deluge_utilities-0.0.6.tar.gz 47.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for deluge-utilities 0.0.6
File Interpreter ABI Platform
deluge_utilities-0.0.6-py3-none-any.whl Python 3 none any Details

Total release size: 68.0 kB

Release files / deluge_utilities-0.0.6.tar.gz

Download URL deluge_utilities-0.0.6.tar.gz
Size 47.3 kB
Tags Source
SHA-256 checksum
How to use checksums
f95a1ad3c08e7de2dee01ded50a39a509195d1e2f1d99c69f02d15ecaf57740c
BLAKE2b-256 checksum
How to use checksums
3eeb19fa92fe60119c0897c709285a5ea7add5a44dacba5b35fc43b5bb4bd82f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / deluge_utilities-0.0.6-py3-none-any.whl

Download URL deluge_utilities-0.0.6-py3-none-any.whl
Size 20.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e68be44121d8f7f0f38a1c23aa39b352287b96e0569211ef8531bcea72209187
BLAKE2b-256 checksum
How to use checksums
b026321b4d6b790b9da69845535377ab0c891ca83f7e86d8ddca5eaaf8e722a0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.0.6 This release

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page