Commit 0ea89a4
Changed files (1)
src
preview
src/preview/weibo.py
@@ -159,9 +159,9 @@ async def parse_weibo_info(post_id: str, data: dict | None = None, **kwargs) ->
media.append({"photo": download_file(photo_url, **kwargs)})
if page_info := data.get("page_info", {}):
videos = page_info.get("urls", {})
- if url := videos.get("mp4_720p_mp4"):
- # This maybe already downloaded by the above loop (for loop in data['pics'])
- media.append({"video": download_file(url, skip_exist=True, suffix=".mp4", **kwargs)})
+ video_urls = [videos.get(quality) for quality in ["mp4_720p_mp4", "mp4_hd_mp4", "mp4_ld_mp4"] if videos.get(quality)]
+ # This maybe already downloaded by the above loop (for loop in data['pics'])
+ media.append({"video": download_first_success_urls(video_urls, skip_exist=True, suffix=".mp4", **kwargs)})
info["post_id"] = data.get("id", post_id)
info["author"] = data.get("user", {}).get("screen_name", "")
info["author_url"] = f"https://m.weibo.cn/detail/{post_id}" # for weibo post, use post url as author url