diff options
author | bashonly <88596187+bashonly@users.noreply.github.com> | 2024-10-25 18:37:18 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-10-25 18:37:18 +0000 |
commit | 57212a5f97ce367590aaa5c3e9a135eead8f81f7 (patch) | |
tree | cbec832b5c1fc132b8df04e00236ccd1ba87da5e /yt_dlp/extractor/vimeo.py | |
parent | c29f5a7fae93a08f3cfbb6127b2faa75145b06a0 (diff) |
[ie/vimeo] Fix API retries (fix c1c9bb4adb42d0d93a2fb5d93a7de0a87b6ba884) (#11351)
Authored by: bashonly
Diffstat (limited to 'yt_dlp/extractor/vimeo.py')
-rw-r--r-- | yt_dlp/extractor/vimeo.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/yt_dlp/extractor/vimeo.py b/yt_dlp/extractor/vimeo.py index 367d5e583..0ed7b9ec1 100644 --- a/yt_dlp/extractor/vimeo.py +++ b/yt_dlp/extractor/vimeo.py @@ -869,11 +869,12 @@ class VimeoIE(VimeoBaseInfoExtractor): for retry in (False, True): try: video = self._call_videos_api(video_id, viewer['jwt'], unlisted_hash) + break except ExtractorError as e: if (not retry and isinstance(e.cause, HTTPError) and e.cause.status == 400 and 'password' in traverse_obj( - e.cause.response.read(), - ({bytes.decode}, {json.loads}, 'invalid_parameters', ..., 'field'), + self._webpage_read_content(e.cause.response, e.cause.response.url, video_id, fatal=False), + ({json.loads}, 'invalid_parameters', ..., 'field'), )): self._verify_video_password( video_id, self._get_video_password(), viewer['xsrft']) |