From 50fed816dd5ae970d69d8997eb854d475ed91ede Mon Sep 17 00:00:00 2001 From: pukkandan Date: Wed, 21 Jul 2021 01:00:46 +0530 Subject: [PATCH] Errors in playlist extraction should obey `--ignore-errors` Related: https://github.com/yt-dlp/yt-dlp/issues/535#issuecomment-883277272, https://github.com/yt-dlp/yt-dlp/issues/518#issuecomment-881794754 --- yt_dlp/YoutubeDL.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/yt_dlp/YoutubeDL.py b/yt_dlp/YoutubeDL.py index acb508b98..9da607b17 100644 --- a/yt_dlp/YoutubeDL.py +++ b/yt_dlp/YoutubeDL.py @@ -1363,13 +1363,18 @@ def iter_playlistitems(format): if not isinstance(ie_entries, (list, PagedList)): ie_entries = LazyList(ie_entries) + def get_entry(i): + return YoutubeDL.__handle_extraction_exceptions( + lambda self, i: ie_entries[i - 1] + )(self, i) + entries = [] for i in playlistitems or itertools.count(playliststart): if playlistitems is None and playlistend is not None and playlistend < i: break entry = None try: - entry = ie_entries[i - 1] + entry = get_entry(i) if entry is None: raise EntryNotInPlaylist() except (IndexError, EntryNotInPlaylist):