git
This commit is contained in:
+3
-27
@@ -1,14 +1,11 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
Download Manager — Multi-client (UltraCC + lokální qBittorrent)
|
||||
Smyčka každých N minut pro každý klient:
|
||||
Download Manager — lokální qBittorrent
|
||||
Smyčka každých N minut:
|
||||
1. Dokončené torrenty → odeber z qBittorrentu (data zachovej), zapiš do DB
|
||||
2. Spočítej volné sloty
|
||||
3. Doplň nové torrenty dle priority: seeders + velikost
|
||||
|
||||
Oba klienti sdílí stejnou DB frontu. Torrent "nárokovaný" jedním klientem
|
||||
(qb_state='added') nebude nabídnut druhému klientovi.
|
||||
"""
|
||||
|
||||
import pymysql
|
||||
@@ -23,17 +20,6 @@ from datetime import datetime, timedelta
|
||||
DEAD_AFTER_HOURS = 72 # progress < 95% po 72h → dead
|
||||
DEAD_PROGRESS_THRESHOLD = 95.0
|
||||
STUCK_AFTER_HOURS = 168 # progress >= 95% ale < 100% po 7 dnech → dead
|
||||
# {
|
||||
# "name": "UltraCC Seedbox",
|
||||
# "max_concurrent": 30,
|
||||
# "qbt": {
|
||||
# "host": "https://vladob.zen.usbx.me/qbittorrent",
|
||||
# "username": "vladob",
|
||||
# "password": "jCni3U6d#y4bfcm",
|
||||
# "VERIFY_WEBUI_CERTIFICATE": False,
|
||||
# },
|
||||
# },
|
||||
|
||||
CLIENTS = [
|
||||
{
|
||||
"name": "Local qBittorrent",
|
||||
@@ -45,16 +31,6 @@ CLIENTS = [
|
||||
"password": "adminadmin",
|
||||
},
|
||||
},
|
||||
{
|
||||
"name": "UltraCC Seedbox",
|
||||
"max_concurrent": 30,
|
||||
"qbt": {
|
||||
"host": "https://vladob.zen.usbx.me/qbittorrent",
|
||||
"username": "vladob",
|
||||
"password": "jCni3U6d#y4bfcm",
|
||||
"VERIFY_WEBUI_CERTIFICATE": False,
|
||||
},
|
||||
},
|
||||
]
|
||||
|
||||
DB_CONFIG = {
|
||||
@@ -207,7 +183,7 @@ def handle_dead_torrents(qbt, cursor):
|
||||
cursor.execute("""
|
||||
UPDATE torrents
|
||||
SET
|
||||
qb_state = 'incomplete',
|
||||
qb_state = 'dead',
|
||||
qb_progress = %s,
|
||||
qb_last_update = NOW()
|
||||
WHERE torrent_hash = %s OR qb_hash = %s
|
||||
|
||||
@@ -31,8 +31,8 @@ HOW_MANY_TO_CHECK = 0
|
||||
COOKIE_FILE = Path("sktorrent_cookies.json")
|
||||
|
||||
CATEGORIES = {
|
||||
24: "Knihy a časopisy",
|
||||
32: "Mluvené slovo"
|
||||
23: "Knihy a časopisy",
|
||||
24: "Mluvené slovo"
|
||||
}
|
||||
MAX_PAGES = 10
|
||||
|
||||
|
||||
Reference in New Issue
Block a user