fix douban rank
This commit is contained in:
parent
3905463940
commit
9a102056d8
@ -127,6 +127,28 @@ def tv_animation(page: int = 1,
|
|||||||
return [MediaInfo(douban_info=tv).to_dict() for tv in tvs]
|
return [MediaInfo(douban_info=tv).to_dict() for tv in tvs]
|
||||||
|
|
||||||
|
|
||||||
|
@router.get("/movie_hot", summary="豆瓣热门电影", response_model=List[schemas.MediaInfo])
|
||||||
|
def movie_hot(page: int = 1,
|
||||||
|
count: int = 30,
|
||||||
|
_: schemas.TokenPayload = Depends(verify_token)) -> Any:
|
||||||
|
"""
|
||||||
|
热门电影
|
||||||
|
"""
|
||||||
|
movies = DoubanChain().movie_hot(page=page, count=count)
|
||||||
|
return [MediaInfo(douban_info=movie).to_dict() for movie in movies]
|
||||||
|
|
||||||
|
|
||||||
|
@router.get("/tv_hot", summary="豆瓣热门电视剧", response_model=List[schemas.MediaInfo])
|
||||||
|
def tv_hot(page: int = 1,
|
||||||
|
count: int = 30,
|
||||||
|
_: schemas.TokenPayload = Depends(verify_token)) -> Any:
|
||||||
|
"""
|
||||||
|
热门电视剧
|
||||||
|
"""
|
||||||
|
tvs = DoubanChain().tv_hot(page=page, count=count)
|
||||||
|
return [MediaInfo(douban_info=tv).to_dict() for tv in tvs]
|
||||||
|
|
||||||
|
|
||||||
@router.get("/{doubanid}", summary="查询豆瓣详情", response_model=schemas.MediaInfo)
|
@router.get("/{doubanid}", summary="查询豆瓣详情", response_model=schemas.MediaInfo)
|
||||||
def douban_info(doubanid: str,
|
def douban_info(doubanid: str,
|
||||||
_: schemas.TokenPayload = Depends(verify_token)) -> Any:
|
_: schemas.TokenPayload = Depends(verify_token)) -> Any:
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
from typing import Optional, List
|
from typing import Optional, List
|
||||||
|
|
||||||
from app.chain import ChainBase
|
from app.chain import ChainBase
|
||||||
|
from app.core.config import settings
|
||||||
from app.schemas import MediaType
|
from app.schemas import MediaType
|
||||||
from app.utils.singleton import Singleton
|
from app.utils.singleton import Singleton
|
||||||
|
|
||||||
@ -10,7 +11,7 @@ class DoubanChain(ChainBase, metaclass=Singleton):
|
|||||||
豆瓣处理链,单例运行
|
豆瓣处理链,单例运行
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def movie_top250(self, page: int = 1, count: int = 30) -> List[dict]:
|
def movie_top250(self, page: int = 1, count: int = 30) -> Optional[List[dict]]:
|
||||||
"""
|
"""
|
||||||
获取豆瓣电影TOP250
|
获取豆瓣电影TOP250
|
||||||
:param page: 页码
|
:param page: 页码
|
||||||
@ -18,19 +19,19 @@ class DoubanChain(ChainBase, metaclass=Singleton):
|
|||||||
"""
|
"""
|
||||||
return self.run_module("movie_top250", page=page, count=count)
|
return self.run_module("movie_top250", page=page, count=count)
|
||||||
|
|
||||||
def movie_showing(self, page: int = 1, count: int = 30) -> List[dict]:
|
def movie_showing(self, page: int = 1, count: int = 30) -> Optional[List[dict]]:
|
||||||
"""
|
"""
|
||||||
获取正在上映的电影
|
获取正在上映的电影
|
||||||
"""
|
"""
|
||||||
return self.run_module("movie_showing", page=page, count=count)
|
return self.run_module("movie_showing", page=page, count=count)
|
||||||
|
|
||||||
def tv_weekly_chinese(self, page: int = 1, count: int = 30) -> List[dict]:
|
def tv_weekly_chinese(self, page: int = 1, count: int = 30) -> Optional[List[dict]]:
|
||||||
"""
|
"""
|
||||||
获取本周中国剧集榜
|
获取本周中国剧集榜
|
||||||
"""
|
"""
|
||||||
return self.run_module("tv_weekly_chinese", page=page, count=count)
|
return self.run_module("tv_weekly_chinese", page=page, count=count)
|
||||||
|
|
||||||
def tv_weekly_global(self, page: int = 1, count: int = 30) -> List[dict]:
|
def tv_weekly_global(self, page: int = 1, count: int = 30) -> Optional[List[dict]]:
|
||||||
"""
|
"""
|
||||||
获取本周全球剧集榜
|
获取本周全球剧集榜
|
||||||
"""
|
"""
|
||||||
@ -50,8 +51,24 @@ class DoubanChain(ChainBase, metaclass=Singleton):
|
|||||||
return self.run_module("douban_discover", mtype=mtype, sort=sort, tags=tags,
|
return self.run_module("douban_discover", mtype=mtype, sort=sort, tags=tags,
|
||||||
page=page, count=count)
|
page=page, count=count)
|
||||||
|
|
||||||
def tv_animation(self, page: int = 1, count: int = 30) -> List[dict]:
|
def tv_animation(self, page: int = 1, count: int = 30) -> Optional[List[dict]]:
|
||||||
"""
|
"""
|
||||||
获取动画剧集
|
获取动画剧集
|
||||||
"""
|
"""
|
||||||
return self.run_module("tv_animation", page=page, count=count)
|
return self.run_module("tv_animation", page=page, count=count)
|
||||||
|
|
||||||
|
def movie_hot(self, page: int = 1, count: int = 30) -> Optional[List[dict]]:
|
||||||
|
"""
|
||||||
|
获取热门电影
|
||||||
|
"""
|
||||||
|
if settings.RECOGNIZE_SOURCE != "douban":
|
||||||
|
return None
|
||||||
|
return self.run_module("movie_hot", page=page, count=count)
|
||||||
|
|
||||||
|
def tv_hot(self, page: int = 1, count: int = 30) -> Optional[List[dict]]:
|
||||||
|
"""
|
||||||
|
获取热门剧集
|
||||||
|
"""
|
||||||
|
if settings.RECOGNIZE_SOURCE != "douban":
|
||||||
|
return None
|
||||||
|
return self.run_module("tv_hot", page=page, count=count)
|
||||||
|
@ -477,6 +477,26 @@ class DoubanModule(_ModuleBase):
|
|||||||
return []
|
return []
|
||||||
return infos.get("subject_collection_items")
|
return infos.get("subject_collection_items")
|
||||||
|
|
||||||
|
def movie_hot(self, page: int = 1, count: int = 30) -> List[dict]:
|
||||||
|
"""
|
||||||
|
获取豆瓣热门电影
|
||||||
|
"""
|
||||||
|
infos = self.doubanapi.movie_hot_gaia(start=(page - 1) * count,
|
||||||
|
count=count)
|
||||||
|
if not infos:
|
||||||
|
return []
|
||||||
|
return infos.get("subject_collection_items")
|
||||||
|
|
||||||
|
def tv_hot(self, page: int = 1, count: int = 30) -> List[dict]:
|
||||||
|
"""
|
||||||
|
获取豆瓣热门剧集
|
||||||
|
"""
|
||||||
|
infos = self.doubanapi.tv_hot(start=(page - 1) * count,
|
||||||
|
count=count)
|
||||||
|
if not infos:
|
||||||
|
return []
|
||||||
|
return infos.get("subject_collection_items")
|
||||||
|
|
||||||
def search_medias(self, meta: MetaBase) -> Optional[List[MediaInfo]]:
|
def search_medias(self, meta: MetaBase) -> Optional[List[MediaInfo]]:
|
||||||
"""
|
"""
|
||||||
搜索媒体信息
|
搜索媒体信息
|
||||||
|
Loading…
x
Reference in New Issue
Block a user