diff --git a/app/modules/fanart/__init__.py b/app/modules/fanart/__init__.py index 93d13ecc..2d5f5cbd 100644 --- a/app/modules/fanart/__init__.py +++ b/app/modules/fanart/__init__.py @@ -420,7 +420,7 @@ class FanartModule(_ModuleBase): return result @classmethod - @cached(maxsize=settings.CACHE_CONF["fanart"], ttl=settings.CACHE_CONF["meta"]) + @cached(maxsize=settings.CACHE_CONF["fanart"], ttl=settings.CACHE_CONF["meta"], skip_none=False) def __request_fanart(cls, media_type: MediaType, queryid: Union[str, int]) -> Optional[dict]: if media_type == MediaType.MOVIE: image_url = cls._movie_url % queryid diff --git a/app/utils/limit.py b/app/utils/limit.py index 27dc7fcd..bec915da 100644 --- a/app/utils/limit.py +++ b/app/utils/limit.py @@ -156,7 +156,8 @@ class ExponentialBackoffRateLimiter(BaseRateLimiter): with self.lock: self.next_allowed_time = current_time + self.current_wait self.current_wait = min(self.current_wait * self.backoff_factor, self.max_wait) - self.log_warning(f"触发限流,将在 {self.current_wait} 秒后允许继续调用") + wait_time = self.next_allowed_time - current_time + self.log_warning(f"触发限流,将在 {wait_time:.2f} 秒后允许继续调用") # 时间窗口限流器