mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-09-20 17:31:25 +02:00
Compare commits
No commits in common. "a06ebc9bf7876a09aaf31a147511b0a787fa334e" and "ae38877cd9a740e3270e168a5d478ff068ff2379" have entirely different histories.
a06ebc9bf7
...
ae38877cd9
|
@ -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,
|
'https://api.bilibili.com/x/player/v2', video_id,
|
||||||
query={'aid': aid, 'cid': cid} if aid else {'bvid': video_id, 'cid': cid},
|
query={'aid': aid, 'cid': cid} if aid else {'bvid': video_id, 'cid': cid},
|
||||||
note=f'Extracting subtitle info {cid}'), ('data', 'subtitle'))
|
note=f'Extracting subtitle info {cid}')
|
||||||
if not traverse_obj(subtitle_info, 'subtitles') and traverse_obj(subtitle_info, 'allow_submit'):
|
for s in traverse_obj(video_info_json, ('data', 'subtitle', 'subtitles', ...)):
|
||||||
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', ...)):
|
|
||||||
subtitles.setdefault(s['lan'], []).append({
|
subtitles.setdefault(s['lan'], []).append({
|
||||||
'ext': 'srt',
|
'ext': 'srt',
|
||||||
'data': self.json2srt(self._download_json(s['subtitle_url'], video_id))
|
'data': self.json2srt(self._download_json(s['subtitle_url'], video_id))
|
||||||
|
@ -902,7 +899,7 @@ class BilibiliCheeseSeasonIE(BilibiliCheeseIE):
|
||||||
'view_count': int,
|
'view_count': int,
|
||||||
}
|
}
|
||||||
}],
|
}],
|
||||||
'params': {'playlist_items': '1'},
|
'skip': 'paid video in list',
|
||||||
}, {
|
}, {
|
||||||
'url': 'https://www.bilibili.com/cheese/play/ss5918',
|
'url': 'https://www.bilibili.com/cheese/play/ss5918',
|
||||||
'info_dict': {
|
'info_dict': {
|
||||||
|
@ -911,16 +908,11 @@ class BilibiliCheeseSeasonIE(BilibiliCheeseIE):
|
||||||
'description': '帮普通人建立世界模型,降低人与人的沟通门槛',
|
'description': '帮普通人建立世界模型,降低人与人的沟通门槛',
|
||||||
},
|
},
|
||||||
'playlist_mincount': 5,
|
'playlist_mincount': 5,
|
||||||
'skip': 'paid video in list',
|
|
||||||
}]
|
}]
|
||||||
|
|
||||||
def _get_cheese_entries(self, season_info):
|
def _get_cheese_entries(self, season_info):
|
||||||
for ep_id in traverse_obj(season_info, ('episodes', lambda _, v: v['episode_can_view'], 'id')):
|
for ep_id in traverse_obj(season_info, ('episodes', lambda _, v: v['episode_can_view'], 'id')):
|
||||||
yield {
|
yield self.url_result(f'https://www.bilibili.com/cheese/play/ep{ep_id}', BilibiliCheeseIE, str(ep_id))
|
||||||
**self._extract_episode(season_info, ep_id, self._HEADERS),
|
|
||||||
'extractor_key': BilibiliCheeseIE.ie_key(),
|
|
||||||
'extractor': 'BilibiliCheese',
|
|
||||||
}
|
|
||||||
|
|
||||||
def _real_extract(self, url):
|
def _real_extract(self, url):
|
||||||
season_id = self._match_id(url)
|
season_id = self._match_id(url)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user