diff --git a/utils_imdb.py b/utils_imdb.py deleted file mode 100644 index bdac150..0000000 --- a/utils_imdb.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -import urllib.request -import urllib.parse -from utils import with_disk_cache - -@with_disk_cache('imdbapi_info') -def get_imdb_info(imdb_id: str) -> dict: - """ - Fetch IMDb info from imdbapi.dev as a fallback or replacement for M-Team. - """ - query = urllib.parse.quote(imdb_id) - url = f"https://api.imdbapi.dev/search/titles?query={query}" - - req = urllib.request.Request(url, headers={ - 'accept': 'application/json', - 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:148.0) Gecko/20100101 Firefox/148.0' - }) - - try: - with urllib.request.urlopen(req) as response: - data = json.loads(response.read().decode()) - if data and "titles" in data and len(data["titles"]) > 0: - # Return the matching title info - for title in data["titles"]: - if title.get("id") == imdb_id: - return {"code": "0", "message": "SUCCESS", "data": title} - return {"code": "0", "message": "SUCCESS", "data": data["titles"][0]} - except Exception as e: - print(f"Error fetching from imdbapi for {imdb_id}: {e}") - - return {"code": "1", "message": "NOT_FOUND", "data": {}} diff --git a/workflow.py b/workflow.py index fb58791..2a4f429 100644 --- a/workflow.py +++ b/workflow.py @@ -3,11 +3,11 @@ import time from pathlib import Path from utils_mteam import ( + mteam_imdb_info, search_mteam_torrents, format_mteam_torrent, generate_mteam_download_token, ) -from utils_imdb import get_imdb_info from utils_qb import ( get_qb_client, download_torrent, @@ -87,12 +87,12 @@ def process_imdb_workflow(imdb_id: str, dl_dir: str = "/data/QB", jellyfin_base_ Workflow to automatically find, download, and map torrents for an IMDb ID into a Jellyfin library. """ print(f"=== [0] Fetching IMDB info for {imdb_id} ===") - imdb_info = get_imdb_info(imdb_id) - if 'data' not in imdb_info or not imdb_info['data']: - raise ValueError(f"Failed to get IMDB info from imdbapi: {imdb_info}") + imdb_info = mteam_imdb_info(imdb_id) + if 'data' not in imdb_info: + raise ValueError(f"Failed to get IMDB info from M-Team: {imdb_info}") - title = imdb_info['data'].get('primaryTitle', 'Unknown_Title') - year = imdb_info['data'].get('startYear', '') + title = imdb_info['data'].get('title', 'Unknown_Title') + year = imdb_info['data'].get('year', '') title_dir = f"{title} ({year})" print(f"Found Title: {title_dir}")