Compare commits

..

No commits in common. "a06ebc9bf7876a09aaf31a147511b0a787fa334e" and "ae38877cd9a740e3270e168a5d478ff068ff2379" have entirely different histories.

View File

@ -114,14 +114,11 @@ class BilibiliBaseIE(InfoExtractor):
}]
}
subtitle_info = traverse_obj(self._download_json(
video_info_json = self._download_json(
'https://api.bilibili.com/x/player/v2', video_id,
query={'aid': aid, 'cid': cid} if aid else {'bvid': video_id, 'cid': cid},
note=f'Extracting subtitle info {cid}'), ('data', 'subtitle'))
if not traverse_obj(subtitle_info, 'subtitles') and traverse_obj(subtitle_info, 'allow_submit'):
if not self._get_cookies('https://api.bilibili.com').get('SESSDATA'): # no login session cookie
self.report_warning(f'CC subtitles (if exist) are only visible when logged in. {self._login_hint()}')
for s in traverse_obj(subtitle_info, ('subtitles', ...)):
note=f'Extracting subtitle info {cid}')
for s in traverse_obj(video_info_json, ('data', 'subtitle', 'subtitles', ...)):
subtitles.setdefault(s['lan'], []).append({
'ext': 'srt',
'data': self.json2srt(self._download_json(s['subtitle_url'], video_id))
@ -902,7 +899,7 @@ class BilibiliCheeseSeasonIE(BilibiliCheeseIE):
'view_count': int,
}
}],
'params': {'playlist_items': '1'},
'skip': 'paid video in list',
}, {
'url': 'https://www.bilibili.com/cheese/play/ss5918',
'info_dict': {
@ -911,16 +908,11 @@ class BilibiliCheeseSeasonIE(BilibiliCheeseIE):
'description': '帮普通人建立世界模型,降低人与人的沟通门槛',
},
'playlist_mincount': 5,
'skip': 'paid video in list',
}]
def _get_cheese_entries(self, season_info):
for ep_id in traverse_obj(season_info, ('episodes', lambda _, v: v['episode_can_view'], 'id')):
yield {
**self._extract_episode(season_info, ep_id, self._HEADERS),
'extractor_key': BilibiliCheeseIE.ie_key(),
'extractor': 'BilibiliCheese',
}
yield self.url_result(f'https://www.bilibili.com/cheese/play/ep{ep_id}', BilibiliCheeseIE, str(ep_id))
def _real_extract(self, url):
season_id = self._match_id(url)