diff --git a/yt_dlp/extractor/youtube.py b/yt_dlp/extractor/youtube.py index 73f38402b..48c42072a 100644 --- a/yt_dlp/extractor/youtube.py +++ b/yt_dlp/extractor/youtube.py @@ -520,13 +520,15 @@ class YoutubeBaseInfoExtractor(InfoExtractor): yt_cookies = self._get_cookies('https://www.youtube.com') sapisid_cookie = dict_get( yt_cookies, ('__Secure-3PAPISID', 'SAPISID')) - if sapisid_cookie is None: + if sapisid_cookie is None or not sapisid_cookie.value: return time_now = round(time.time()) # SAPISID cookie is required if not already present if not yt_cookies.get('SAPISID'): + self.write_debug('Copying __Secure-3PAPISID cookie to SAPISID cookie', only_once=True) self._set_cookie( '.youtube.com', 'SAPISID', sapisid_cookie.value, secure=True, expire_time=time_now + 3600) + self.write_debug('Extracted SAPISID cookie', only_once=True) # SAPISIDHASH algorithm from https://stackoverflow.com/a/32065323 sapisidhash = hashlib.sha1( f'{time_now} {sapisid_cookie.value} {origin}'.encode('utf-8')).hexdigest()