38 lines
1.1 KiB
Python
Executable File
38 lines
1.1 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
from argparse import ArgumentParser
|
|
from logging import INFO, StreamHandler
|
|
from os import path
|
|
from sys import stdout
|
|
from time import sleep
|
|
|
|
from requests import head
|
|
from transmissionrpc_cf import LOGGER, Client # type: ignore
|
|
|
|
parser = ArgumentParser()
|
|
parser.add_argument("-u", "--username", required=True)
|
|
parser.add_argument("-p", "--password", required=True)
|
|
args = parser.parse_args()
|
|
|
|
LOGGER.setLevel(INFO)
|
|
LOGGER.addHandler(StreamHandler(stdout))
|
|
|
|
client = Client(
|
|
"https://torrent.crystalyx.net/transmission/rpc",
|
|
port=443,
|
|
user=args.username,
|
|
password=args.password,
|
|
)
|
|
|
|
for torrent in client.get_torrents():
|
|
if "nyaa" in torrent.comment:
|
|
try:
|
|
response = head(torrent.comment)
|
|
if response.status_code != 200:
|
|
print(f"{response.status_code} - {path.join(torrent.downloadDir, torrent.name)}")
|
|
except Exception:
|
|
print(
|
|
f"{response.status_code} - {torrent.comment} - {path.join(torrent.downloadDir, torrent.name)}" # noqa
|
|
)
|
|
|
|
sleep(1)
|