mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-12-01 00:52:58 +01:00
[vimeo] Prevent infinite loops if video password verification fails
We're seeing this in the tests¹ right now, which do not terminate. ¹ https://travis-ci.org/jaimeMF/youtube-dl/jobs/51135858
This commit is contained in:
parent
09ab40b7d1
commit
30965ac66a
@ -18,6 +18,7 @@
|
|||||||
InAdvancePagedList,
|
InAdvancePagedList,
|
||||||
int_or_none,
|
int_or_none,
|
||||||
RegexNotFoundError,
|
RegexNotFoundError,
|
||||||
|
smuggle_url,
|
||||||
std_headers,
|
std_headers,
|
||||||
unsmuggle_url,
|
unsmuggle_url,
|
||||||
urlencode_postdata,
|
urlencode_postdata,
|
||||||
@ -267,8 +268,11 @@ def _real_extract(self, url):
|
|||||||
raise ExtractorError('The author has restricted the access to this video, try with the "--referer" option')
|
raise ExtractorError('The author has restricted the access to this video, try with the "--referer" option')
|
||||||
|
|
||||||
if re.search(r'<form[^>]+?id="pw_form"', webpage) is not None:
|
if re.search(r'<form[^>]+?id="pw_form"', webpage) is not None:
|
||||||
|
if data and '_video_password_verified' in data:
|
||||||
|
raise ExtractorError('video password verification failed!')
|
||||||
self._verify_video_password(url, video_id, webpage)
|
self._verify_video_password(url, video_id, webpage)
|
||||||
return self._real_extract(url)
|
return self._real_extract(
|
||||||
|
smuggle_url(url, {'_video_password_verified': 'verified'}))
|
||||||
else:
|
else:
|
||||||
raise ExtractorError('Unable to extract info section',
|
raise ExtractorError('Unable to extract info section',
|
||||||
cause=e)
|
cause=e)
|
||||||
|
Loading…
Reference in New Issue
Block a user