fix #2151 TMDB发现和趋势修改为TTL缓存

This commit is contained in:
jxxghp
2024-05-24 09:29:51 +08:00
parent 6ee6de48ff
commit a278c80951
3 changed files with 13 additions and 3 deletions

View File

@ -1,4 +1,5 @@
from ..tmdb import TMDb
from cachetools import cached, TTLCache
try:
from urllib import urlencode
@ -12,14 +13,16 @@ class Discover(TMDb):
"tv": "/discover/tv"
}
@cached(cache=TTLCache(maxsize=1, ttl=43200))
def discover_movies(self, params):
"""
Discover movies by different types of data like average rating, number of votes, genres and certifications.
:param params: dict
:return:
"""
return self._request_obj(self._urls["movies"], urlencode(params), key="results")
return self._request_obj(self._urls["movies"], urlencode(params), key="results", call_cached=False)
@cached(cache=TTLCache(maxsize=1, ttl=43200))
def discover_tv_shows(self, params):
"""
Discover TV shows by different types of data like average rating, number of votes, genres,
@ -27,4 +30,4 @@ class Discover(TMDb):
:param params: dict
:return:
"""
return self._request_obj(self._urls["tv"], urlencode(params), key="results")
return self._request_obj(self._urls["tv"], urlencode(params), key="results", call_cached=False)

View File

@ -1,14 +1,21 @@
from cachetools import cached, TTLCache
from ..tmdb import TMDb
class Trending(TMDb):
_urls = {"trending": "/trending/%s/%s"}
@cached(cache=TTLCache(maxsize=1, ttl=43200))
def _trending(self, media_type="all", time_window="day", page=1):
"""
Get trending, TTLCache 12 hours
"""
return self._request_obj(
self._urls["trending"] % (media_type, time_window),
params="page=%s" % page,
key="results",
call_cached=False
)
def all_day(self, page=1):

View File

@ -141,7 +141,7 @@ class TMDb(object):
def cached_request(self, method, url, data, json,
_ts=datetime.strftime(datetime.now(), '%Y%m%d')):
"""
缓存请求时间默认1天None不缓存
缓存请求
"""
return self.request(method, url, data, json)