mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-14 20:33:19 +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:
parent
e85a39717a
commit
d3d8d8184a
|
@ -19,7 +19,7 @@
|
||||||
|
|
||||||
|
|
||||||
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 @@ def _add_skip_wall(url):
|
||||||
|
|
||||||
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 @@ def _get_subtitles(self, video_id, webpage):
|
||||||
|
|
||||||
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 @@
|
||||||
|
|
||||||
|
|
||||||
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 @@
|
||||||
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
|
||||||
|
|
Loading…
Reference in a new issue