From 89854d188d07726371d6e3cb32e84f5f54a5726b Mon Sep 17 00:00:00 2001 From: jxxghp Date: Thu, 5 Oct 2023 17:49:31 -0700 Subject: [PATCH] fix actor thumb --- app/chain/tmdb.py | 3 ++- app/modules/themoviedb/__init__.py | 2 +- app/modules/themoviedb/scraper.py | 8 ++++++++ app/plugins/personmeta/__init__.py | 2 +- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/app/chain/tmdb.py b/app/chain/tmdb.py index 28b7d9c5..a798fa53 100644 --- a/app/chain/tmdb.py +++ b/app/chain/tmdb.py @@ -5,6 +5,7 @@ from cachetools import cached, TTLCache from app import schemas from app.chain import ChainBase +from app.core.config import settings from app.schemas import MediaType from app.utils.singleton import Singleton @@ -122,5 +123,5 @@ class TmdbChain(ChainBase, metaclass=Singleton): while True: info = random.choice(infos) if info and info.get("backdrop_path"): - return f"https://image.tmdb.org/t/p/original{info.get('backdrop_path')}" + return f"https://{settings.TMDB_IMAGE_DOMAIN}/t/p/original{info.get('backdrop_path')}" return None diff --git a/app/modules/themoviedb/__init__.py b/app/modules/themoviedb/__init__.py index 953a032d..1ce0a82b 100644 --- a/app/modules/themoviedb/__init__.py +++ b/app/modules/themoviedb/__init__.py @@ -345,7 +345,7 @@ class TheMovieDbModule(_ModuleBase): image_path = seasoninfo.get(image_type.value) if image_path: - return f"https://image.tmdb.org/t/p/{image_prefix}{image_path}" + return f"https://{settings.TMDB_IMAGE_DOMAIN}/t/p/{image_prefix}{image_path}" return None def movie_similar(self, tmdbid: int) -> List[dict]: diff --git a/app/modules/themoviedb/scraper.py b/app/modules/themoviedb/scraper.py index 5245ca42..966343b3 100644 --- a/app/modules/themoviedb/scraper.py +++ b/app/modules/themoviedb/scraper.py @@ -165,6 +165,10 @@ class TmdbScraper: DomUtils.add_node(doc, xactor, "type", "Actor") DomUtils.add_node(doc, xactor, "role", actor.get("character") or actor.get("role") or "") DomUtils.add_node(doc, xactor, "tmdbid", actor.get("id") or "") + DomUtils.add_node(doc, xactor, "thumb", + f"https://{settings.TMDB_IMAGE_DOMAIN}/t/p/original{actor.get('profile_path')}") + DomUtils.add_node(doc, xactor, "profile", + f"https://www.themoviedb.org/person/{actor.get('id')}") # 风格 genres = mediainfo.genres or [] for genre in genres: @@ -317,6 +321,10 @@ class TmdbScraper: DomUtils.add_node(doc, xactor, "name", actor.get("name") or "") DomUtils.add_node(doc, xactor, "type", "Actor") DomUtils.add_node(doc, xactor, "tmdbid", actor.get("id") or "") + DomUtils.add_node(doc, xactor, "thumb", + f"https://{settings.TMDB_IMAGE_DOMAIN}/t/p/original{actor.get('profile_path')}") + DomUtils.add_node(doc, xactor, "profile", + f"https://www.themoviedb.org/person/{actor.get('id')}") # 保存文件 self.__save_nfo(doc, file_path.with_suffix(".nfo")) diff --git a/app/plugins/personmeta/__init__.py b/app/plugins/personmeta/__init__.py index 9315b4bb..f97a1b1d 100644 --- a/app/plugins/personmeta/__init__.py +++ b/app/plugins/personmeta/__init__.py @@ -506,7 +506,7 @@ class PersonMeta(_PluginBase): profile_path = person_tmdbinfo.get('profile_path') if profile_path: logger.info(f"{people.get('Name')} 从TMDB获取到图片:{profile_path}") - profile_path = f"https://image.tmdb.org/t/p/original{profile_path}" + profile_path = f"https://{settings.TMDB_IMAGE_DOMAIN}/t/p/original{profile_path}" # 从豆瓣信息中更新人物信息 if douban_actors and (not updated_name