mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-11-04 08:35:12 +00:00 
			
		
		
		
	This commit is contained in:
		@@ -24,7 +24,18 @@ from ..utils import (
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class BiliBiliIE(InfoExtractor):
 | 
			
		||||
    _VALID_URL = r'https?://(?:www\.|bangumi\.|)bilibili\.(?:tv|com)/(?:video/av|anime/(?P<anime_id>\d+)/play#)(?P<id>\d+)'
 | 
			
		||||
    _VALID_URL = r'''(?x)
 | 
			
		||||
                    https?://
 | 
			
		||||
                        (?:(?:www|bangumi)\.)?
 | 
			
		||||
                        bilibili\.(?:tv|com)/
 | 
			
		||||
                        (?:
 | 
			
		||||
                            (?:
 | 
			
		||||
                                video/[aA][vV]|
 | 
			
		||||
                                anime/(?P<anime_id>\d+)/play\#
 | 
			
		||||
                            )(?P<id_bv>\d+)|
 | 
			
		||||
                            video/[bB][vV](?P<id>[^/?#&]+)
 | 
			
		||||
                        )
 | 
			
		||||
                    '''
 | 
			
		||||
 | 
			
		||||
    _TESTS = [{
 | 
			
		||||
        'url': 'http://www.bilibili.tv/video/av1074402/',
 | 
			
		||||
@@ -92,6 +103,10 @@ class BiliBiliIE(InfoExtractor):
 | 
			
		||||
                'skip_download': True,  # Test metadata only
 | 
			
		||||
            },
 | 
			
		||||
        }]
 | 
			
		||||
    }, {
 | 
			
		||||
        # new BV video id format
 | 
			
		||||
        'url': 'https://www.bilibili.com/video/BV1JE411F741',
 | 
			
		||||
        'only_matching': True,
 | 
			
		||||
    }]
 | 
			
		||||
 | 
			
		||||
    _APP_KEY = 'iVGUTjsxvpLeuDCf'
 | 
			
		||||
@@ -109,7 +124,7 @@ class BiliBiliIE(InfoExtractor):
 | 
			
		||||
        url, smuggled_data = unsmuggle_url(url, {})
 | 
			
		||||
 | 
			
		||||
        mobj = re.match(self._VALID_URL, url)
 | 
			
		||||
        video_id = mobj.group('id')
 | 
			
		||||
        video_id = mobj.group('id') or mobj.group('id_bv')
 | 
			
		||||
        anime_id = mobj.group('anime_id')
 | 
			
		||||
        webpage = self._download_webpage(url, video_id)
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user