mirror of https://github.com/yt-dlp/yt-dlp.git
Merge pull request #7242 from lalinsky/vimeo-seed-status
[vimeo] Fix error parsing
This commit is contained in:
commit
63a6494834
|
@ -133,7 +133,7 @@ class VimeoIE(VimeoBaseInfoExtractor):
|
||||||
'uploader_id': 'user18948128',
|
'uploader_id': 'user18948128',
|
||||||
'uploader': 'Jaime Marquínez Ferrándiz',
|
'uploader': 'Jaime Marquínez Ferrándiz',
|
||||||
'duration': 10,
|
'duration': 10,
|
||||||
'description': 'This is "youtube-dl password protected test video" by Jaime Marquínez Ferrándiz on Vimeo, the home for high quality videos and the people who love them.',
|
'description': 'This is "youtube-dl password protected test video" by Jaime Marquínez Ferrándiz on Vimeo, the home for high quality videos and the people\u2026',
|
||||||
},
|
},
|
||||||
'params': {
|
'params': {
|
||||||
'videopassword': 'youtube-dl',
|
'videopassword': 'youtube-dl',
|
||||||
|
@ -181,6 +181,11 @@ class VimeoIE(VimeoBaseInfoExtractor):
|
||||||
'uploader_id': 'user28849593',
|
'uploader_id': 'user28849593',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
'url': 'https://vimeo.com/109815029',
|
||||||
|
'note': 'Video not completely processed, "failed" seed status',
|
||||||
|
'only_matching': True,
|
||||||
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
|
@ -273,13 +278,13 @@ class VimeoIE(VimeoBaseInfoExtractor):
|
||||||
self.report_extraction(video_id)
|
self.report_extraction(video_id)
|
||||||
|
|
||||||
vimeo_config = self._search_regex(
|
vimeo_config = self._search_regex(
|
||||||
r'vimeo\.config\s*=\s*({.+?});', webpage,
|
r'vimeo\.config\s*=\s*(?:({.+?})|_extend\([^,]+,\s+({.+?})\));', webpage,
|
||||||
'vimeo config', default=None)
|
'vimeo config', default=None)
|
||||||
if vimeo_config:
|
if vimeo_config:
|
||||||
seed_status = self._parse_json(vimeo_config, video_id).get('seed_status', {})
|
seed_status = self._parse_json(vimeo_config, video_id).get('seed_status', {})
|
||||||
if seed_status.get('state') == 'failed':
|
if seed_status.get('state') == 'failed':
|
||||||
raise ExtractorError(
|
raise ExtractorError(
|
||||||
'%s returned error: %s' % (self.IE_NAME, seed_status['title']),
|
'%s said: %s' % (self.IE_NAME, seed_status['title']),
|
||||||
expected=True)
|
expected=True)
|
||||||
|
|
||||||
# Extract the config JSON
|
# Extract the config JSON
|
||||||
|
|
Loading…
Reference in New Issue