ytdl-org/youtube-dl · error · ExtractorError
Could not find video title
Error message
Could not find video title
What it means
Raised by MTV's _get_video_info when the RSS/mrss item doc yields no usable title element: neither the 'urn:mtvn:video_title' category, nor the mrss <title>, nor a plain <title> with non-None text. The final title_el.text being None triggers this unexpected (not expected=True) ExtractorError, which usually indicates a page/schema change rather than a user mistake.
Source
Thrown at youtube_dl/extractor/mtv.py:176
description = strip_or_none(xpath_text(itemdoc, 'description'))
timestamp = timeconvert(xpath_text(itemdoc, 'pubDate'))
title_el = None
if title_el is None:
title_el = find_xpath_attr(
itemdoc, './/{http://search.yahoo.com/mrss/}category',
'scheme', 'urn:mtvn:video_title')
if title_el is None:
title_el = itemdoc.find(compat_xpath('.//{http://search.yahoo.com/mrss/}title'))
if title_el is None:
title_el = itemdoc.find(compat_xpath('.//title'))
if title_el.text is None:
title_el = None
title = title_el.text
if title is None:
raise ExtractorError('Could not find video title')
title = title.strip()
# This a short id that's used in the webpage urls
mtvn_id = None
mtvn_id_node = find_xpath_attr(itemdoc, './/{http://search.yahoo.com/mrss/}category',
'scheme', 'urn:mtvn:id')
if mtvn_id_node is not None:
mtvn_id = mtvn_id_node.text
formats = self._extract_video_formats(mediagen_doc, mtvn_id, video_id)
# Some parts of complete video may be missing (e.g. missing Act 3 in
# http://www.southpark.de/alle-episoden/s14e01-sexual-healing)
if not formats:
return None
self._sort_formats(formats)
View on GitHub (pinned to 956b8c5855)
Solutions
- Update youtube-dl (or migrate to yt-dlp, which has far more current MTV-family maintenance).
- If it persists on the latest version, report the URL — the title fallback chain needs a new pattern.
- As a workaround for scripting, catch the ExtractorError and supply a manual title with -o metadata if you can still obtain formats another way.
Example fix
pip install -U yt-dlp # youtube-dl's MTV extractors are stale; yt-dlp is actively maintained
Defensive patterns
Strategy: try-catch
Try / catch
except ExtractorError as e:
if 'Could not find video title' in str(e):
report_upstream(url, site='mtv') # parsing bug, not user error
else:
raise Prevention
- Use yt-dlp for MTV-family sites — its extractors are actively maintained.
- Treat this error as a version problem first: update before debugging.
- In pipelines, allow manual title override (-o metadata) if formats still extract elsewhere.
When it happens
Trigger: MTV-family item XML where all three title lookups fail or the fallback <title> element exists with null text, so title_el ends as None and .text access yields None.
Common situations: MTV sub-sites shipping redesigned RSS feeds lacking the mrss title category; extractor versions predating a site redesign; rare feeds that legitimately have empty titles, exposing brittle parsing.
Related errors
- Invalid rendition field.
- Found song but don't know how to download it
- Unable to extract embedUrl
- Missing "id" field in extractor result
- Letv cloud returned an unknown error
AI-assisted analysis of ytdl-org/youtube-dl@956b8c5855 (2026-08-14).
Data as JSON: /api/errors/b36100f378825126.
Report an issue: GitHub.