{"record":{"id":"40fea7740f9c5201","repo":"ytdl-org/youtube-dl","slug":"crunchyroll-returned-error-s","errorCode":null,"errorMessage":"crunchyroll returned error: %s","messagePattern":"crunchyroll returned error: (.+?)","errorType":"exception","errorClass":"ExtractorError","httpStatus":null,"severity":"error","filePath":"youtube_dl/extractor/crunchyroll.py","lineNumber":437,"sourceCode":"            mobile_webpage = self._download_webpage(url, video_id, 'Downloading mobile webpage')\n            webpage_url = self._search_regex(r'<link rel=\"canonical\" href=\"([^\"]+)\" />', mobile_webpage, 'webpage_url')\n        else:\n            webpage_url = 'http://www.' + mobj.group('url')\n\n        webpage = self._download_webpage(\n            self._add_skip_wall(webpage_url), video_id,\n            headers=self.geo_verification_headers())\n        note_m = self._html_search_regex(\n            r'<div class=\"showmedia-trailer-notice\">(.+?)</div>',\n            webpage, 'trailer-notice', default='')\n        if note_m:\n            raise ExtractorError(note_m)\n\n        mobj = re.search(r'Page\\.messaging_box_controller\\.addItems\\(\\[(?P<msg>{.+?})\\]\\)', webpage)\n        if mobj:\n            msg = json.loads(mobj.group('msg'))\n            if msg.get('type') == 'error':\n                raise ExtractorError('crunchyroll returned error: %s' % msg['message_body'], expected=True)\n\n        if 'To view this, please log in to verify you are 18 or older.' in webpage:\n            self.raise_login_required()\n\n        media = self._parse_json(self._search_regex(\n            r'vilos\\.config\\.media\\s*=\\s*({.+?});',\n            webpage, 'vilos media', default='{}'), video_id)\n        media_metadata = media.get('metadata') or {}\n\n        language = self._search_regex(\n            r'(?:vilos\\.config\\.player\\.language|LOCALE)\\s*=\\s*([\"\\'])(?P<lang>(?:(?!\\1).)+)\\1',\n            webpage, 'language', default=None, group='lang')\n\n        video_title = self._html_search_regex(\n            (r'(?s)<h1[^>]*>((?:(?!<h1).)*?<(?:span[^>]+itemprop=[\"\\']title[\"\\']|meta[^>]+itemprop=[\"\\']position[\"\\'])[^>]*>(?:(?!<h1).)+?)</h1>',\n             r'<title>(.+?),\\s+-\\s+.+? Crunchyroll'),\n            webpage, 'video_title', default=None)\n        if not video_title:","sourceCodeStart":419,"sourceCodeEnd":455,"githubUrl":"https://github.com/ytdl-org/youtube-dl/blob/956b8c585591b401a543e409accb163eeaaa1193/youtube_dl/extractor/crunchyroll.py#L419-L455","documentation":"Error \"crunchyroll returned error: %s\" thrown in ytdl-org/youtube-dl.","triggerScenarios":"Thrown at youtube_dl/extractor/crunchyroll.py:437 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Read the Crunchyroll error; ensure the content is available in your region and you are logged in."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"956b8c585591b401a543e409accb163eeaaa1193","analyzedAt":"2026-08-14T18:59:47.863Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}