{"record":{"id":"41e8ace514ec97bc","repo":"yt-dlp/yt-dlp","slug":"there-are-no-entries","errorCode":null,"errorMessage":"There are no entries","messagePattern":"There are no entries","errorType":"exception","errorClass":"EntryNotInPlaylist","httpStatus":null,"severity":"error","filePath":"yt_dlp/utils/_utils.py","lineNumber":2436,"sourceCode":"                if len(page_results) < only_more:\n                    only_more -= len(page_results)\n                else:\n                    yield from page_results[:only_more]\n                    break\n            yield from page_results\n\n\nclass PlaylistEntries:\n    MissingEntry = object()\n    is_exhausted = False\n\n    def __init__(self, ydl, info_dict):\n        self.ydl = ydl\n\n        # _entries must be assigned now since infodict can change during iteration\n        entries = info_dict.get('entries')\n        if entries is None:\n            raise EntryNotInPlaylist('There are no entries')\n        elif isinstance(entries, list):\n            self.is_exhausted = True\n\n        requested_entries = info_dict.get('requested_entries')\n        self.is_incomplete = requested_entries is not None\n        if self.is_incomplete:\n            assert self.is_exhausted\n            self._entries = [self.MissingEntry] * max(requested_entries or [0])\n            for i, entry in zip(requested_entries, entries):  # noqa: B905\n                self._entries[i - 1] = entry\n        elif isinstance(entries, (list, PagedList, LazyList)):\n            self._entries = entries\n        else:\n            self._entries = LazyList(entries)\n\n    PLAYLIST_ITEMS_RE = re.compile(r'''(?x)\n        (?P<start>[+-]?\\d+)?\n        (?P<range>[:-]","sourceCodeStart":2418,"sourceCodeEnd":2454,"githubUrl":"https://github.com/yt-dlp/yt-dlp/blob/81ecd58b1394793e6da9998cc19fdb45657f1685/yt_dlp/utils/_utils.py#L2418-L2454","documentation":"Error \"There are no entries\" thrown in yt-dlp/yt-dlp.","triggerScenarios":"Thrown at yt_dlp/utils/_utils.py:2436 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["The extractor returned a playlist with no entries; verify the URL is correct and the playlist is publicly accessible and not empty.","Check --playlist-items / --match-filter options, which may have filtered out every entry.","Update yt-dlp; a site change may cause the extractor to find zero items."],"exampleFix":"Reject empty playlist/item specifications early: if not entries: raise ValueError('There are no entries')","handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"81ecd58b1394793e6da9998cc19fdb45657f1685","analyzedAt":"2026-08-22T12:21:25.439Z","schemaVersion":2},"datasetVersion":"2026-08-22T14:17:55.899Z"}