{"record":{"id":"d406b481d13a889d","repo":"ytdl-org/youtube-dl","slug":"s-is-not-a-video","errorCode":null,"errorMessage":"%s is not a video","messagePattern":"(.+?) is not a video","errorType":"exception","errorClass":"ExtractorError","httpStatus":null,"severity":"warning","filePath":"youtube_dl/extractor/wdr.py","lineNumber":333,"sourceCode":"        display_id = self._match_id(url)\n\n        # Table of Contents seems to always be at this address, so fetch it directly.\n        # The website fetches configurationJS.php5, which links to tableOfContentsJS.php5.\n        table_of_contents = self._download_json(\n            'https://www.wdrmaus.de/elefantenseite/data/tableOfContentsJS.php5',\n            display_id)\n        if display_id not in table_of_contents:\n            raise ExtractorError(\n                'No entry in site\\'s table of contents for this URL. '\n                'Is the fragment part of the URL (after the #) correct?',\n                expected=True)\n        xml_metadata_path = table_of_contents[display_id]['xmlPath']\n        xml_metadata = self._download_xml(\n            'https://www.wdrmaus.de/elefantenseite/' + xml_metadata_path,\n            display_id)\n        zmdb_url_element = xml_metadata.find('./movie/zmdb_url')\n        if zmdb_url_element is None:\n            raise ExtractorError(\n                '%s is not a video' % display_id, expected=True)\n        return self.url_result(zmdb_url_element.text, ie=WDRIE.ie_key())\n\n\nclass WDRMobileIE(InfoExtractor):\n    _VALID_URL = r'''(?x)\n        https?://mobile-ondemand\\.wdr\\.de/\n        .*?/fsk(?P<age_limit>[0-9]+)\n        /[0-9]+/[0-9]+/\n        (?P<id>[0-9]+)_(?P<title>[0-9]+)'''\n    IE_NAME = 'wdr:mobile'\n    _WORKING = False  # no such domain\n    _TEST = {\n        'url': 'http://mobile-ondemand.wdr.de/CMS2010/mdb/ondemand/weltweit/fsk0/42/421735/421735_4283021.mp4',\n        'info_dict': {\n            'title': '4283021',\n            'id': '421735',\n            'ext': 'mp4',","sourceCodeStart":315,"sourceCodeEnd":351,"githubUrl":"https://github.com/ytdl-org/youtube-dl/blob/956b8c585591b401a543e409accb163eeaaa1193/youtube_dl/extractor/wdr.py#L315-L351","documentation":"Raised by the WDR Maus extractor when the XML metadata for a table-of-contents entry has no ./movie/zmdb_url element. Such entries are non-video content (games, print pages, interactive features), so the extractor refuses and tells the user the ID is not a video.","triggerScenarios":"A valid table-of-contents entry whose XML (at the xmlPath the TOC provides) lacks the movie/zmdb_url node; i.e. the URL points at a Die Maus interactive/print item instead of a video.","commonSituations":"Following links to games or coloring pages in the children's section; assuming every Elefantenseite fragment is a video.","solutions":["Pick a URL that actually points to a video clip on the page.","If you expected a video, the site may have replaced it — check the current page content.","No extractor fix is needed; this is correct behavior for non-video entries."],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":"try:\n    info = ydl.extract_info(url)\nexcept ExtractorError as e:\n    if 'is not a video' in str(e):\n        skip_non_video(url)\n    else:\n        raise","preventionTips":["Select links that point to video clips, not games or print pages, when scraping Die Maus.","Treat this as informational — the extractor correctly identified non-video content.","Filter candidate URLs by the surrounding page context before queueing."],"tags":["not-a-video","extractor","wdr","site-structure"],"backgroundTag":null,"analyzedSha":"956b8c585591b401a543e409accb163eeaaa1193","analyzedAt":"2026-08-14T18:59:47.863Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}