|
|
@ -249,7 +249,23 @@ class YoutubeBaseInfoExtractor(InfoExtractor):
|
|
|
|
|
|
|
|
|
|
|
|
return True
|
|
|
|
return True
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def _initialize_consent(self):
|
|
|
|
|
|
|
|
cookies = self._get_cookies('https://www.youtube.com/')
|
|
|
|
|
|
|
|
if cookies.get('__Secure-3PSID'):
|
|
|
|
|
|
|
|
return
|
|
|
|
|
|
|
|
consent_id = None
|
|
|
|
|
|
|
|
consent = cookies.get('CONSENT')
|
|
|
|
|
|
|
|
if consent:
|
|
|
|
|
|
|
|
if 'YES' in consent.value:
|
|
|
|
|
|
|
|
return
|
|
|
|
|
|
|
|
consent_id = self._search_regex(
|
|
|
|
|
|
|
|
r'PENDING\+(\d+)', consent.value, 'consent', default=None)
|
|
|
|
|
|
|
|
if not consent_id:
|
|
|
|
|
|
|
|
consent_id = random.randint(100, 999)
|
|
|
|
|
|
|
|
self._set_cookie('.youtube.com', 'CONSENT', 'YES+cb.20210328-17-p0.en+FX+%s' % consent_id)
|
|
|
|
|
|
|
|
|
|
|
|
def _real_initialize(self):
|
|
|
|
def _real_initialize(self):
|
|
|
|
|
|
|
|
self._initialize_consent()
|
|
|
|
if self._downloader is None:
|
|
|
|
if self._downloader is None:
|
|
|
|
return
|
|
|
|
return
|
|
|
|
if not self._login():
|
|
|
|
if not self._login():
|
|
|
|