From dd92c0df5b31ddec40b3a35580a6ef8a2496002e Mon Sep 17 00:00:00 2001 From: coletdjnz Date: Sun, 20 Apr 2025 20:21:21 +1200 Subject: [PATCH] minor logging improvements --- test/test_pot/test_pot_director.py | 2 +- yt_dlp/extractor/youtube/_video.py | 16 +++++++--------- yt_dlp/extractor/youtube/pot/_director.py | 2 +- 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/test/test_pot/test_pot_director.py b/test/test_pot/test_pot_director.py index a9ddf9ca38..51bdeccf43 100644 --- a/test/test_pot/test_pot_director.py +++ b/test/test_pot/test_pot_director.py @@ -1237,7 +1237,7 @@ class TestPoTokenRequestDirector: assert response == EXAMPLE_PO_TOKEN assert provider.request_called_times == 1 assert pot_provider.request_called_times == 1 - assert 'PO Token Provider "unsupported" does not support this request, trying next available provider. Reason: unsupported request' in logger.messages['trace'] + assert 'PO Token Provider "unsupported" rejected this request, trying next available provider. Reason: unsupported request' in logger.messages['trace'] def test_unavailable_request_no_fallback(self, ie, logger, pot_cache, pot_request): director = PoTokenRequestDirector(logger=logger, cache=pot_cache) diff --git a/yt_dlp/extractor/youtube/_video.py b/yt_dlp/extractor/youtube/_video.py index 4013898c48..902de14825 100644 --- a/yt_dlp/extractor/youtube/_video.py +++ b/yt_dlp/extractor/youtube/_video.py @@ -2869,6 +2869,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor): f'Got a GVS PO Token for {client} client, but missing Data Sync ID for account. Formats may not work.' f'You may need to pass a Data Sync ID with --extractor-args "youtube:data_sync_id=XXX"') + self.write_debug(f'{video_id}: Retrieved a {context.value} PO Token for {client} client from config') return config_po_token # Require GVS WebPO Token if logged in for external fetching @@ -2878,7 +2879,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor): f'You may need to pass a Data Sync ID with --extractor-args "youtube:data_sync_id=XXX"') return - return self._fetch_po_token( + po_token = self._fetch_po_token( client=client, context=context.value, ytcfg=ytcfg, @@ -2891,6 +2892,10 @@ class YoutubeIE(YoutubeBaseInfoExtractor): **kwargs, ) + if po_token: + self.write_debug(f'{video_id}: Retrieved a {context.value} PO Token for {client} client') + return po_token + def _fetch_po_token(self, client, **kwargs): context = kwargs.get('context') @@ -2937,14 +2942,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor): bypass_cache=False, ) - po_token = self._pot_director.get_po_token(pot_request) - - if not po_token: - self.write_debug(f'{kwargs.get("video_id")}: No {pot_request.context.value} PO Token available for {client} client') - return - - self.write_debug(f'{kwargs.get("video_id")}: Retrieved a {pot_request.context.value} PO Token for {client} client') - return po_token + return self._pot_director.get_po_token(pot_request) @staticmethod def _is_agegated(player_response): diff --git a/yt_dlp/extractor/youtube/pot/_director.py b/yt_dlp/extractor/youtube/pot/_director.py index 0f309f9499..7ba88adb6a 100644 --- a/yt_dlp/extractor/youtube/pot/_director.py +++ b/yt_dlp/extractor/youtube/pot/_director.py @@ -266,7 +266,7 @@ class PoTokenRequestDirector: response = provider.request_pot(request.copy()) except PoTokenProviderRejectedRequest as e: self.logger.trace( - f'PO Token Provider "{provider.PROVIDER_NAME}" does not support this request, trying next available provider. Reason: {e}') + f'PO Token Provider "{provider.PROVIDER_NAME}" rejected this request, trying next available provider. Reason: {e}') continue except PoTokenProviderError as e: self.logger.warning(