1
0
Fork 0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2025-03-09 12:50:23 -05:00

Apply suggestions from code review

Co-authored-by: bashonly <88596187+bashonly@users.noreply.github.com>
This commit is contained in:
4ft35t 2025-02-21 17:07:55 +08:00 committed by GitHub
parent ac57024822
commit 082f0f7d71
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -193,28 +193,14 @@ def _real_extract(self, url):
video_id = self._match_id(url)
meta = self._weibo_download_json(f'https://weibo.com/ajax/statuses/show?id={video_id}', video_id)
mix_media_info = traverse_obj(meta, ('mix_media_info', 'items'))
mix_media_info = traverse_obj(meta, ('mix_media_info', 'items', ...))
if not mix_media_info:
return self._parse_video_info(meta)
playlist_title = traverse_obj(mix_media_info, (0, 'data', 'content1'))
return self.playlist_result(self._entries(mix_media_info), playlist_title=playlist_title)
return self.playlist_result(self._entries(mix_media_info), video_id)
def _entries(self, mix_media_info):
for media_info in mix_media_info:
if media_info.get('type') == 'pic':
continue
video_info = {
**traverse_obj(media_info, {
'id': ('data', 'object_id'),
'page_info': {'media_info': ('data', 'media_info')},
}),
}
# fix filename too long
del video_info['page_info']['media_info']['kol_title']
for media_info in traverse_obj(mix_media_info, lambda _, v: v['type'] != 'pic'):
yield self._parse_video_info(video_info)