From 6cda50c0aaf901277d0904448a087739d9a1341e Mon Sep 17 00:00:00 2001 From: Stefan Lobbenmeier Date: Thu, 26 Dec 2024 08:45:59 -0300 Subject: [PATCH] use fancy traverse_obj syntax from PR review suggestion --- yt_dlp/extractor/zdf.py | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/yt_dlp/extractor/zdf.py b/yt_dlp/extractor/zdf.py index 850d7bb6c7..058c514c74 100644 --- a/yt_dlp/extractor/zdf.py +++ b/yt_dlp/extractor/zdf.py @@ -344,7 +344,6 @@ class ZDFIE(ZDFBaseIE): 'title': chap.get('anchorLabel'), } for chap, next_chap in zip(chapter_marks, chapter_marks[1:])] - target_info = traverse_obj(content, ('programmeItem', 0, 'http://zdf.de/rels/target')) return merge_dicts(info, { 'title': title, 'description': content.get('leadParagraph') or content.get('teasertext'), @@ -352,14 +351,16 @@ class ZDFIE(ZDFBaseIE): 'timestamp': unified_timestamp(content.get('editorialDate')), 'thumbnails': thumbnails, 'chapters': chapters or None, - 'series_id': traverse_obj(target_info, ('http://zdf.de/rels/cmdm/series', 'seriesUuid')), - 'series': traverse_obj(target_info, ('http://zdf.de/rels/cmdm/series', 'seriesTitle')), - 'season': traverse_obj(target_info, ('http://zdf.de/rels/cmdm/season', 'seasonTitle')), - 'season_number': traverse_obj(target_info, ('http://zdf.de/rels/cmdm/season', 'seasonNumber')), - 'season_id': traverse_obj(target_info, ('http://zdf.de/rels/cmdm/season', 'seasonUuid')), 'episode': title, - 'episode_number': traverse_obj(target_info, 'episodeNumber'), - 'episode_id': traverse_obj(target_info, 'contentId'), + **traverse_obj(content, ('programmeItem', 0, 'http://zdf.de/rels/target', { + 'series_id': ('http://zdf.de/rels/cmdm/series', 'seriesUuid'), + 'series': ('http://zdf.de/rels/cmdm/series', 'seriesTitle'), + 'season': ('http://zdf.de/rels/cmdm/season', 'seasonTitle'), + 'season_number': ('http://zdf.de/rels/cmdm/season', 'seasonNumber'), + 'season_id': ('http://zdf.de/rels/cmdm/season', 'seasonUuid'), + 'episode_number': 'episodeNumber', + 'episode_id': 'contentId', + })), }) def _extract_regular(self, url, player, video_id):