From f96a3fb7d3cbeb2b63c2eafcc14b359f37ff3078 Mon Sep 17 00:00:00 2001 From: bashonly <88596187+bashonly@users.noreply.github.com> Date: Thu, 17 Nov 2022 19:09:40 +0000 Subject: [PATCH] [extractor/redgifs] Fix bug in 8c188d5d09177ed213a05c900d3523867c5897fd (#5559) --- yt_dlp/extractor/redgifs.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/yt_dlp/extractor/redgifs.py b/yt_dlp/extractor/redgifs.py index f688d1e63..098fb8185 100644 --- a/yt_dlp/extractor/redgifs.py +++ b/yt_dlp/extractor/redgifs.py @@ -72,7 +72,7 @@ def _fetch_oauth_token(self, video_id): self._API_HEADERS['authorization'] = f'Bearer {auth["token"]}' def _call_api(self, ep, video_id, *args, **kwargs): - for attempt in range(2): + for first_attempt in True, False: if 'authorization' not in self._API_HEADERS: self._fetch_oauth_token(video_id) try: @@ -82,8 +82,9 @@ def _call_api(self, ep, video_id, *args, **kwargs): f'https://api.redgifs.com/v2/{ep}', video_id, headers=headers, *args, **kwargs) break except ExtractorError as e: - if not attempt and isinstance(e.cause, urllib.error.HTTPError) and e.cause.code == 401: + if first_attempt and isinstance(e.cause, urllib.error.HTTPError) and e.cause.code == 401: del self._API_HEADERS['authorization'] # refresh the token + continue raise if 'error' in data: