aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordirkf <fieldhouse@gmx.net>2025-01-20 13:23:54 +0000
committerdirkf <fieldhouse@gmx.net>2025-01-20 13:23:54 +0000
commit63fb0fc4159397618b12fa115f957b9ba70f3f88 (patch)
treed3877166ddfa7b9b3d03172fd5ac7a616fbcc8d0
parentb09442a2f4a8d255569abf0bb6b4867c53d0c2e9 (diff)
[YouTube] Retain .videoDetails members from all player responses
-rw-r--r--youtube_dl/extractor/youtube.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/youtube_dl/extractor/youtube.py b/youtube_dl/extractor/youtube.py
index 32e836d49..edaae5bd3 100644
--- a/youtube_dl/extractor/youtube.py
+++ b/youtube_dl/extractor/youtube.py
@@ -2095,7 +2095,11 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
if not hls[0] and hls[1]:
player_response['streamingData']['hlsManifestUrl'] = hls[1]
else:
+ video_details = merge_dicts(*traverse_obj(
+ (player_response, api_player_response),
+ (Ellipsis, 'videoDetails', T(dict))))
player_response.update(api_player_response or {})
+ player_response['videoDetails'] = video_details
def is_agegated(playability):
if not isinstance(playability, dict):