diff --git a/app/modules/themoviedb/tmdbv3api/objs/discover.py b/app/modules/themoviedb/tmdbv3api/objs/discover.py index de7964cb..3e659cc4 100644 --- a/app/modules/themoviedb/tmdbv3api/objs/discover.py +++ b/app/modules/themoviedb/tmdbv3api/objs/discover.py @@ -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) diff --git a/app/modules/themoviedb/tmdbv3api/objs/trending.py b/app/modules/themoviedb/tmdbv3api/objs/trending.py index c7ee5ec2..7338792b 100644 --- a/app/modules/themoviedb/tmdbv3api/objs/trending.py +++ b/app/modules/themoviedb/tmdbv3api/objs/trending.py @@ -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): diff --git a/app/modules/themoviedb/tmdbv3api/tmdb.py b/app/modules/themoviedb/tmdbv3api/tmdb.py index ccd5afeb..2117c1be 100644 --- a/app/modules/themoviedb/tmdbv3api/tmdb.py +++ b/app/modules/themoviedb/tmdbv3api/tmdb.py @@ -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)