43 lines
1.3 KiB
Python
43 lines
1.3 KiB
Python
"""
|
|
mark_torrents_unwanted.py — Označí celé Tower/Torrents a Tower1/Torrents
|
|
jako nechceme (stažený torrent obsah: komiksy, vystřihovánky, speleologie,
|
|
porno, textury...). Žádné rodinné originály (ověřeno pixel-hashem + adresáři).
|
|
|
|
wanted=FALSE, category='Odpad-torrent'
|
|
|
|
Idempotentní + jedna session, autocommit (žádné paralelní běhy → bez deadlocku).
|
|
"""
|
|
import sys
|
|
import psycopg2
|
|
|
|
sys.stdout.reconfigure(encoding="utf-8")
|
|
|
|
DB = dict(host="192.168.1.76", port=5432, user="vladimir.buzalka",
|
|
password="Vlado7309208104++", database="fotky_buzalkovi")
|
|
|
|
DIRS = [
|
|
("Tower/Torrents", "/mnt/user/ZalohaVsechObrazku/Tower/Torrents%"),
|
|
("Tower1/Torrents", "/mnt/user/ZalohaVsechObrazku/Tower1/Torrents%"),
|
|
]
|
|
|
|
conn = psycopg2.connect(**DB)
|
|
conn.set_isolation_level(psycopg2.extensions.ISOLATION_LEVEL_AUTOCOMMIT)
|
|
cur = conn.cursor()
|
|
|
|
total = 0
|
|
for popis, like in DIRS:
|
|
cur.execute("""
|
|
UPDATE photos p
|
|
SET wanted = FALSE,
|
|
category = 'Odpad-torrent'
|
|
FROM zaloha_obrazku z
|
|
WHERE p.zaloha_id = z.id
|
|
AND z.cesta_zalohy LIKE %s
|
|
AND p.category IS DISTINCT FROM 'Odpad-torrent'
|
|
""", (like,))
|
|
print(f" {popis}: {cur.rowcount:,} řádků")
|
|
total += cur.rowcount
|
|
|
|
print(f"\nHotovo. Celkem: {total:,} řádků → wanted=FALSE, category='Odpad-torrent'")
|
|
conn.close()
|