mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-09-07 08:26:53 +08:00
fix apis
This commit is contained in:
@@ -26,14 +26,14 @@ def bangumi_subjects(type: int = 2,
|
|||||||
cat: int = None,
|
cat: int = None,
|
||||||
sort: str = 'rank',
|
sort: str = 'rank',
|
||||||
year: int = None,
|
year: int = None,
|
||||||
limit: int = 30,
|
page: int = 1,
|
||||||
offset: int = 0,
|
count: int = 30,
|
||||||
_: schemas.TokenPayload = Depends(verify_token)) -> Any:
|
_: schemas.TokenPayload = Depends(verify_token)) -> Any:
|
||||||
"""
|
"""
|
||||||
搜索Bangumi
|
搜索Bangumi
|
||||||
"""
|
"""
|
||||||
return RecommendChain().bangumi_discover(type=type, cat=cat, sort=sort, year=year,
|
return RecommendChain().bangumi_discover(type=type, cat=cat, sort=sort, year=year,
|
||||||
limit=limit, offset=offset)
|
page=page, count=count)
|
||||||
|
|
||||||
|
|
||||||
@router.get("/credits/{bangumiid}", summary="查询Bangumi演职员表", response_model=List[schemas.MediaPerson])
|
@router.get("/credits/{bangumiid}", summary="查询Bangumi演职员表", response_model=List[schemas.MediaPerson])
|
||||||
|
|||||||
+14
-14
@@ -165,7 +165,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
vote_average: float = 0,
|
vote_average: float = 0,
|
||||||
vote_count: int = 0,
|
vote_count: int = 0,
|
||||||
release_date: str = "",
|
release_date: str = "",
|
||||||
page: int = 1) -> Any:
|
page: int = 1) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
TMDB热门电影
|
TMDB热门电影
|
||||||
"""
|
"""
|
||||||
@@ -191,7 +191,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
vote_average: float = 0,
|
vote_average: float = 0,
|
||||||
vote_count: int = 0,
|
vote_count: int = 0,
|
||||||
release_date: str = "",
|
release_date: str = "",
|
||||||
page: int = 1) -> Any:
|
page: int = 1) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
TMDB热门电视剧
|
TMDB热门电视剧
|
||||||
"""
|
"""
|
||||||
@@ -209,7 +209,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
|
|
||||||
@log_execution_time(logger=logger)
|
@log_execution_time(logger=logger)
|
||||||
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
||||||
def tmdb_trending(self, page: int = 1) -> Any:
|
def tmdb_trending(self, page: int = 1) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
TMDB流行趋势
|
TMDB流行趋势
|
||||||
"""
|
"""
|
||||||
@@ -218,7 +218,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
|
|
||||||
@log_execution_time(logger=logger)
|
@log_execution_time(logger=logger)
|
||||||
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
||||||
def bangumi_calendar(self, page: int = 1, count: int = 30) -> Any:
|
def bangumi_calendar(self, page: int = 1, count: int = 30) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
Bangumi每日放送
|
Bangumi每日放送
|
||||||
"""
|
"""
|
||||||
@@ -232,7 +232,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
sort: str = 'rank',
|
sort: str = 'rank',
|
||||||
year: int = None,
|
year: int = None,
|
||||||
count: int = 30,
|
count: int = 30,
|
||||||
page: int = 1) -> Any:
|
page: int = 1) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
搜索Bangumi
|
搜索Bangumi
|
||||||
"""
|
"""
|
||||||
@@ -244,7 +244,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
|
|
||||||
@log_execution_time(logger=logger)
|
@log_execution_time(logger=logger)
|
||||||
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
||||||
def douban_movie_showing(self, page: int = 1, count: int = 30) -> Any:
|
def douban_movie_showing(self, page: int = 1, count: int = 30) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
豆瓣正在热映
|
豆瓣正在热映
|
||||||
"""
|
"""
|
||||||
@@ -253,7 +253,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
|
|
||||||
@log_execution_time(logger=logger)
|
@log_execution_time(logger=logger)
|
||||||
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
||||||
def douban_movies(self, sort: str = "R", tags: str = "", page: int = 1, count: int = 30) -> Any:
|
def douban_movies(self, sort: str = "R", tags: str = "", page: int = 1, count: int = 30) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
豆瓣最新电影
|
豆瓣最新电影
|
||||||
"""
|
"""
|
||||||
@@ -263,7 +263,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
|
|
||||||
@log_execution_time(logger=logger)
|
@log_execution_time(logger=logger)
|
||||||
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
||||||
def douban_tvs(self, sort: str = "R", tags: str = "", page: int = 1, count: int = 30) -> Any:
|
def douban_tvs(self, sort: str = "R", tags: str = "", page: int = 1, count: int = 30) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
豆瓣最新电视剧
|
豆瓣最新电视剧
|
||||||
"""
|
"""
|
||||||
@@ -273,7 +273,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
|
|
||||||
@log_execution_time(logger=logger)
|
@log_execution_time(logger=logger)
|
||||||
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
||||||
def douban_movie_top250(self, page: int = 1, count: int = 30) -> Any:
|
def douban_movie_top250(self, page: int = 1, count: int = 30) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
豆瓣电影TOP250
|
豆瓣电影TOP250
|
||||||
"""
|
"""
|
||||||
@@ -282,7 +282,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
|
|
||||||
@log_execution_time(logger=logger)
|
@log_execution_time(logger=logger)
|
||||||
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
||||||
def douban_tv_weekly_chinese(self, page: int = 1, count: int = 30) -> Any:
|
def douban_tv_weekly_chinese(self, page: int = 1, count: int = 30) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
豆瓣国产剧集榜
|
豆瓣国产剧集榜
|
||||||
"""
|
"""
|
||||||
@@ -291,7 +291,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
|
|
||||||
@log_execution_time(logger=logger)
|
@log_execution_time(logger=logger)
|
||||||
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
||||||
def douban_tv_weekly_global(self, page: int = 1, count: int = 30) -> Any:
|
def douban_tv_weekly_global(self, page: int = 1, count: int = 30) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
豆瓣全球剧集榜
|
豆瓣全球剧集榜
|
||||||
"""
|
"""
|
||||||
@@ -300,7 +300,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
|
|
||||||
@log_execution_time(logger=logger)
|
@log_execution_time(logger=logger)
|
||||||
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
||||||
def douban_tv_animation(self, page: int = 1, count: int = 30) -> Any:
|
def douban_tv_animation(self, page: int = 1, count: int = 30) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
豆瓣热门动漫
|
豆瓣热门动漫
|
||||||
"""
|
"""
|
||||||
@@ -309,7 +309,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
|
|
||||||
@log_execution_time(logger=logger)
|
@log_execution_time(logger=logger)
|
||||||
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
||||||
def douban_movie_hot(self, page: int = 1, count: int = 30) -> Any:
|
def douban_movie_hot(self, page: int = 1, count: int = 30) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
豆瓣热门电影
|
豆瓣热门电影
|
||||||
"""
|
"""
|
||||||
@@ -318,7 +318,7 @@ class RecommendChain(ChainBase, metaclass=Singleton):
|
|||||||
|
|
||||||
@log_execution_time(logger=logger)
|
@log_execution_time(logger=logger)
|
||||||
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
@cached(ttl=recommend_ttl, region=recommend_cache_region)
|
||||||
def douban_tv_hot(self, page: int = 1, count: int = 30) -> Any:
|
def douban_tv_hot(self, page: int = 1, count: int = 30) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
豆瓣热门电视剧
|
豆瓣热门电视剧
|
||||||
"""
|
"""
|
||||||
|
|||||||
@@ -31,14 +31,17 @@ class BangumiApi(object):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@cached(maxsize=settings.CACHE_CONF["bangumi"], ttl=settings.CACHE_CONF["meta"])
|
@cached(maxsize=settings.CACHE_CONF["bangumi"], ttl=settings.CACHE_CONF["meta"])
|
||||||
def __invoke(cls, url, **kwargs):
|
def __invoke(cls, url, key: str = None, **kwargs):
|
||||||
req_url = cls._base_url + url
|
req_url = cls._base_url + url
|
||||||
params = {}
|
params = {}
|
||||||
if kwargs:
|
if kwargs:
|
||||||
params.update(kwargs)
|
params.update(kwargs)
|
||||||
resp = cls._req.get_res(url=req_url, params=params)
|
resp = cls._req.get_res(url=req_url, params=params)
|
||||||
try:
|
try:
|
||||||
return resp.json() if resp else None
|
if not resp:
|
||||||
|
return None
|
||||||
|
result = resp.json()
|
||||||
|
return result.get(key) if key else result
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(e)
|
print(e)
|
||||||
return None
|
return None
|
||||||
@@ -200,4 +203,6 @@ class BangumiApi(object):
|
|||||||
"""
|
"""
|
||||||
发现
|
发现
|
||||||
"""
|
"""
|
||||||
return self.__invoke("discover", **kwargs)
|
return self.__invoke(self._urls["discover"],
|
||||||
|
key="data",
|
||||||
|
_ts=datetime.strftime(datetime.now(), '%Y%m%d'), **kwargs)
|
||||||
|
|||||||
Reference in New Issue
Block a user