diff --git a/yt_dlp/extractor/bilibili.py b/yt_dlp/extractor/bilibili.py index 3a887d7974..48ef9be79d 100644 --- a/yt_dlp/extractor/bilibili.py +++ b/yt_dlp/extractor/bilibili.py @@ -1299,7 +1299,10 @@ class BilibiliSpaceListBaseIE(BilibiliSpaceBaseIE): class BilibiliCollectionListIE(BilibiliSpaceListBaseIE): - _VALID_URL = r'https?://space\.bilibili\.com/(?P\d+)/lists/(?P\d+)/?(\?type=season\b|#|\??$)' + _VALID_URL = [ + r'https?://space\.bilibili\.com/(?P\d+)/channel/collectiondetail/?\?sid=(?P\d+)', + r'https?://space\.bilibili\.com/(?P\d+)/lists/(?P\d+)/?(\?type=season\b|#|\??$)', + ] _TESTS = [{ 'url': 'https://space.bilibili.com/2142762/lists/3662502?type=season', 'info_dict': { @@ -1316,6 +1319,9 @@ class BilibiliCollectionListIE(BilibiliSpaceListBaseIE): }, { 'url': 'https://space.bilibili.com/2142762/lists/3662502', 'only_matching': True, + }, { + 'url': 'https://space.bilibili.com/2142762/channel/collectiondetail?sid=57445', + 'only_matching': True, }] def _real_extract(self, url): @@ -1352,7 +1358,10 @@ class BilibiliCollectionListIE(BilibiliSpaceListBaseIE): class BilibiliSeriesListIE(BilibiliSpaceListBaseIE): - _VALID_URL = r'https?://space\.bilibili\.com/(?P\d+)/lists/(?P\d+)/?\?type=series\b' + _VALID_URL = [ + r'https?://space\.bilibili\.com/(?P\d+)/channel/seriesdetail/?\?\bsid=(?P\d+)', + r'https?://space\.bilibili\.com/(?P\d+)/lists/(?P\d+)/?\?type=series\b', + ] _TESTS = [{ 'url': 'https://space.bilibili.com/1958703906/lists/547718?type=series', 'info_dict': { @@ -1367,6 +1376,9 @@ class BilibiliSeriesListIE(BilibiliSpaceListBaseIE): 'modified_date': str, }, 'playlist_mincount': 513, + }, { + 'url': 'https://space.bilibili.com/1958703906/channel/seriesdetail?sid=547718&ctype=0', + 'only_matching': True, }] def _real_extract(self, url):