feat 推荐新增正在热映

fix 豆瓣搜索API
This commit is contained in:
jxxghp 2023-08-30 08:28:37 +08:00
parent b9b8b86019
commit 85a581f0cd
3 changed files with 18 additions and 1 deletions

View File

@ -45,6 +45,21 @@ def recognize_doubanid(doubanid: str,
return schemas.Context() return schemas.Context()
@router.get("/showing", summary="豆瓣正在热映", response_model=List[schemas.MediaInfo])
def movie_showing(page: int = 1,
count: int = 30,
db: Session = Depends(get_db),
_: schemas.TokenPayload = Depends(verify_token)) -> Any:
"""
浏览豆瓣正在热映
"""
movies = DoubanChain(db).movie_showing(page=page, count=count)
if not movies:
return []
medias = [MediaInfo(douban_info=movie) for movie in movies]
return [media.to_dict() for media in medias]
@router.get("/movies", summary="豆瓣电影", response_model=List[schemas.MediaInfo]) @router.get("/movies", summary="豆瓣电影", response_model=List[schemas.MediaInfo])
def douban_movies(sort: str = "R", def douban_movies(sort: str = "R",
tags: str = "", tags: str = "",

View File

@ -42,7 +42,7 @@ def search_by_tmdbid(mediaid: str,
# 识别豆瓣信息 # 识别豆瓣信息
context = DoubanChain(db).recognize_by_doubanid(doubanid) context = DoubanChain(db).recognize_by_doubanid(doubanid)
if not context or not context.media_info or not context.media_info.tmdb_id: if not context or not context.media_info or not context.media_info.tmdb_id:
raise HTTPException(status_code=404, detail="无法识别TMDB媒体信息") return []
torrents = SearchChain(db).search_by_tmdbid(tmdbid=context.media_info.tmdb_id, torrents = SearchChain(db).search_by_tmdbid(tmdbid=context.media_info.tmdb_id,
mtype=context.media_info.type, mtype=context.media_info.type,
area=area) area=area)

View File

@ -446,6 +446,8 @@ class MediaInfo:
self.poster_path = info.get("pic", {}).get("large") self.poster_path = info.get("pic", {}).get("large")
if not self.poster_path and info.get("cover_url"): if not self.poster_path and info.get("cover_url"):
self.poster_path = info.get("cover_url") self.poster_path = info.get("cover_url")
if not self.poster_path and info.get("cover"):
self.poster_path = info.get("cover").get("url")
# 简介 # 简介
if not self.overview: if not self.overview:
self.overview = info.get("intro") or info.get("card_subtitle") or "" self.overview = info.get("intro") or info.get("card_subtitle") or ""