mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 06:35:12 +00:00 
			
		
		
		
	[extractor] Fix pre-checking archive for some extractors
The `id` regex group must be present for `_match_id` and pre-checking archive to work correctly
This commit is contained in:
		| @@ -19,7 +19,7 @@ from ..utils import ( | |||||||
|  |  | ||||||
|  |  | ||||||
| class AWAANIE(InfoExtractor): | class AWAANIE(InfoExtractor): | ||||||
|     _VALID_URL = r'https?://(?:www\.)?(?:awaan|dcndigital)\.ae/(?:#/)?show/(?P<show_id>\d+)/[^/]+(?:/(?P<video_id>\d+)/(?P<season_id>\d+))?' |     _VALID_URL = r'https?://(?:www\.)?(?:awaan|dcndigital)\.ae/(?:#/)?show/(?P<show_id>\d+)/[^/]+(?:/(?P<id>\d+)/(?P<season_id>\d+))?' | ||||||
|  |  | ||||||
|     def _real_extract(self, url): |     def _real_extract(self, url): | ||||||
|         show_id, video_id, season_id = re.match(self._VALID_URL, url).groups() |         show_id, video_id, season_id = re.match(self._VALID_URL, url).groups() | ||||||
|   | |||||||
| @@ -120,7 +120,7 @@ class CrunchyrollBaseIE(InfoExtractor): | |||||||
|  |  | ||||||
| class CrunchyrollIE(CrunchyrollBaseIE, VRVIE): | class CrunchyrollIE(CrunchyrollBaseIE, VRVIE): | ||||||
|     IE_NAME = 'crunchyroll' |     IE_NAME = 'crunchyroll' | ||||||
|     _VALID_URL = r'https?://(?:(?P<prefix>www|m)\.)?(?P<url>crunchyroll\.(?:com|fr)/(?:media(?:-|/\?id=)|(?:[^/]*/){1,2}[^/?&]*?)(?P<video_id>[0-9]+))(?:[/?&]|$)' |     _VALID_URL = r'https?://(?:(?P<prefix>www|m)\.)?(?P<url>crunchyroll\.(?:com|fr)/(?:media(?:-|/\?id=)|(?:[^/]*/){1,2}[^/?&]*?)(?P<id>[0-9]+))(?:[/?&]|$)' | ||||||
|     _TESTS = [{ |     _TESTS = [{ | ||||||
|         'url': 'http://www.crunchyroll.com/wanna-be-the-strongest-in-the-world/episode-1-an-idol-wrestler-is-born-645513', |         'url': 'http://www.crunchyroll.com/wanna-be-the-strongest-in-the-world/episode-1-an-idol-wrestler-is-born-645513', | ||||||
|         'info_dict': { |         'info_dict': { | ||||||
| @@ -413,7 +413,7 @@ Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text | |||||||
|  |  | ||||||
|     def _real_extract(self, url): |     def _real_extract(self, url): | ||||||
|         mobj = re.match(self._VALID_URL, url) |         mobj = re.match(self._VALID_URL, url) | ||||||
|         video_id = mobj.group('video_id') |         video_id = mobj.group('id') | ||||||
|  |  | ||||||
|         if mobj.group('prefix') == 'm': |         if mobj.group('prefix') == 'm': | ||||||
|             mobile_webpage = self._download_webpage(url, video_id, 'Downloading mobile webpage') |             mobile_webpage = self._download_webpage(url, video_id, 'Downloading mobile webpage') | ||||||
|   | |||||||
| @@ -19,7 +19,7 @@ from ..utils import ( | |||||||
|  |  | ||||||
|  |  | ||||||
| class MetacafeIE(InfoExtractor): | class MetacafeIE(InfoExtractor): | ||||||
|     _VALID_URL = r'https?://(?:www\.)?metacafe\.com/watch/(?P<video_id>[^/]+)/(?P<display_id>[^/?#]+)' |     _VALID_URL = r'https?://(?:www\.)?metacafe\.com/watch/(?P<id>[^/]+)/(?P<display_id>[^/?#]+)' | ||||||
|     _DISCLAIMER = 'http://www.metacafe.com/family_filter/' |     _DISCLAIMER = 'http://www.metacafe.com/family_filter/' | ||||||
|     _FILTER_POST = 'http://www.metacafe.com/f/index.php?inputType=filter&controllerGroup=user' |     _FILTER_POST = 'http://www.metacafe.com/f/index.php?inputType=filter&controllerGroup=user' | ||||||
|     IE_NAME = 'metacafe' |     IE_NAME = 'metacafe' | ||||||
|   | |||||||
| @@ -18,7 +18,7 @@ from ..utils import ( | |||||||
| class SinaIE(InfoExtractor): | class SinaIE(InfoExtractor): | ||||||
|     _VALID_URL = r'''(?x)https?://(?:.*?\.)?video\.sina\.com\.cn/ |     _VALID_URL = r'''(?x)https?://(?:.*?\.)?video\.sina\.com\.cn/ | ||||||
|                         (?: |                         (?: | ||||||
|                             (?:view/|.*\#)(?P<video_id>\d+)| |                             (?:view/|.*\#)(?P<id>\d+)| | ||||||
|                             .+?/(?P<pseudo_id>[^/?#]+)(?:\.s?html)| |                             .+?/(?P<pseudo_id>[^/?#]+)(?:\.s?html)| | ||||||
|                             # This is used by external sites like Weibo |                             # This is used by external sites like Weibo | ||||||
|                             api/sinawebApi/outplay.php/(?P<token>.+?)\.swf |                             api/sinawebApi/outplay.php/(?P<token>.+?)\.swf | ||||||
| @@ -58,7 +58,7 @@ class SinaIE(InfoExtractor): | |||||||
|     def _real_extract(self, url): |     def _real_extract(self, url): | ||||||
|         mobj = re.match(self._VALID_URL, url) |         mobj = re.match(self._VALID_URL, url) | ||||||
|  |  | ||||||
|         video_id = mobj.group('video_id') |         video_id = mobj.group('id') | ||||||
|         if not video_id: |         if not video_id: | ||||||
|             if mobj.group('token') is not None: |             if mobj.group('token') is not None: | ||||||
|                 # The video id is in the redirected url |                 # The video id is in the redirected url | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 pukkandan
					pukkandan