ytdl-org/youtube-dl · error · ExtractorError

error

Error message

error

What it means

vShare extraction error: the video page (vshare.io/v/<id>/...) contains a div with class 'xxx-error', whose inner text is regex-extracted and raised verbatim with expected=True. The report tag is the variable name; the real message is whatever error notice vShare rendered.

Source

Thrown at youtube_dl/extractor/vshare.py:61

        chars = [compat_chr(d - int(key_digit)) for d in digits]
        return ''.join(chars)

    def _real_extract(self, url):
        video_id = self._match_id(url)

        webpage = self._download_webpage(
            'https://vshare.io/v/%s/width-650/height-430/1' % video_id,
            video_id, headers={'Referer': url})

        title = self._html_search_regex(
            r'<title>([^<]+)</title>', webpage, 'title')
        title = title.split(' - ')[0]

        error = self._html_search_regex(
            r'(?s)<div[^>]+\bclass=["\']xxx-error[^>]+>(.+?)</div', webpage,
            'error', default=None)
        if error:
            raise ExtractorError(error, expected=True)

        info = self._parse_html5_media_entries(
            url, '<video>%s</video>' % self._extract_packed(webpage),
            video_id)[0]

        self._sort_formats(info['formats'])

        info.update({
            'id': video_id,
            'title': title,
        })

        return info

View on GitHub (pinned to 956b8c5855)

Solutions

  1. Read the extracted div text — it is vShare's own error statement
  2. Open the vshare.io URL directly in a browser to confirm the file's status
  3. If deleted/removed, find an alternative source; no client setting can bypass it
Defensive patterns

Strategy: try-catch

Try / catch

from youtube_dl.utils import ExtractorError
try:
    ydl.extract_info(url)
except ExtractorError as e:
    msg = str(e)
    if any(k in msg.lower() for k in ('deleted', 'removed', 'not found')):
        drop(url)  # permanent
    else:
        log('vShare: %s' % msg)

Prevention

When it happens

Trigger: Downloading a vshare.io/v/<id> URL where the host shows an error notice in the xxx-error div — typically deleted file, DMCA removal, or unavailable content.

Common situations: Following stale embed links from streaming sites; files deleted after takedown; host under maintenance.

Related errors


AI-assisted analysis of ytdl-org/youtube-dl@956b8c5855 (2026-08-14). Data as JSON: /api/errors/74834e628df1bf67. Report an issue: GitHub.