From b320c84c4c79a9664cd83033e61ade257c418981 Mon Sep 17 00:00:00 2001 From: InfinityPacer <160988576+InfinityPacer@users.noreply.github.com> Date: Sun, 2 Feb 2025 11:17:36 +0800 Subject: [PATCH] fix(cache): refine caching behavior for Fanart requests --- app/modules/fanart/__init__.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/app/modules/fanart/__init__.py b/app/modules/fanart/__init__.py index 2d5f5cbd..c20b55c9 100644 --- a/app/modules/fanart/__init__.py +++ b/app/modules/fanart/__init__.py @@ -420,16 +420,19 @@ class FanartModule(_ModuleBase): return result @classmethod - @cached(maxsize=settings.CACHE_CONF["fanart"], ttl=settings.CACHE_CONF["meta"], skip_none=False) + @cached(maxsize=settings.CACHE_CONF["fanart"], ttl=settings.CACHE_CONF["meta"]) def __request_fanart(cls, media_type: MediaType, queryid: Union[str, int]) -> Optional[dict]: if media_type == MediaType.MOVIE: image_url = cls._movie_url % queryid else: image_url = cls._tv_url % queryid try: - ret = RequestUtils(proxies=cls._proxies, timeout=10).get_res(image_url) + ret = RequestUtils(proxies=cls._proxies, timeout=10).get_res(image_url, raise_exception=True) if ret: return ret.json() + else: + logger.debug(f"未能获取到 {queryid} 的Fanart图片") + return {} except Exception as err: logger.error(f"获取{queryid}的Fanart图片失败:{str(err)}") - return None + return None