ytdl-org / youtube-dl

Command-line program to download videos from YouTube.com and other video sites
http://ytdl-org.github.io/youtube-dl/
The Unlicense
131.67k stars 9.97k forks source link

ESPN errors out #25340

Open tv21 opened 4 years ago

tv21 commented 4 years ago

Checklist

Verbose log

[debug] System config: [u'--prefer-ffmpeg', u'--restrict-filenames']
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-v', u'https://www.espn.com/watch/player/_/id/a0514bdc-2c04-423b-b1bf-26220d6e5d5e/bucketId/35312']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2020.05.08
[debug] Python version 2.7.16 (CPython) - Linux-4.19.0-9-686-pae-i686-with-debian-10.4
[debug] exe versions: avconv 4.1.4-1, avprobe 4.1.4-1, ffmpeg 4.1.3-static, ffprobe 4.1.3-static, rtmpdump 2.4
[debug] Proxy map: {}
[ESPNArticle] 35312: Downloading webpage
ERROR: Unable to extract video id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 797, in extract_info
    ie_result = ie.extract(url)
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 530, in extract
    ie_result = self._real_extract(url)
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/espn.py", line 208, in _real_extract
    webpage, 'video id', group='id')
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 1005, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
RegexNotFoundError: Unable to extract video id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Description

WRITE DESCRIPTION HERE Show episode on ESPN site. Probably does require credentials for just about ANY USA cable provider (ESPN is on probably every provider in the United States) however the error does not indicate a credential failure. It appears the URL is a new format that doesn't exactly match any of the formats the extractor knows about. Also tested leaving off the '/bucketId/35312' at the end of the URL but that did not work either.

ImperviousBug commented 3 years ago

The current code still expects a numeric ID there... it'd be great to get a quick fix if possible :)


youtube-dl --verbose -F https://www.espn.com/watch/player/_/id/e67e0893-2ba6-4033-be6f-bddfe31bf267
[...]
[debug] youtube-dl version 2020.11.19
[...]
[ESPNArticle] e67e0893-2ba6-4033-be6f-bddfe31bf267: Downloading webpage
ERROR: Unable to extract video id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp1_szunss\build\youtube_dl\YoutubeDL.py", line 797, in extract_info
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp1_szunss\build\youtube_dl\extractor\common.py", line 532, in extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp1_szunss\build\youtube_dl\extractor\espn.py", line 208, in _real_extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp1_szunss\build\youtube_dl\extractor\common.py", line 1010, in _search_regex
youtube_dl.utils.RegexNotFoundError: Unable to extract video id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.```
ImperviousBug commented 3 years ago

OK, after checking the site's code it's evident the new ID signals a slightly different API with a new entrypoint and Adobe Pass integration (which is already available within the current codebase) so if anyone with a little more Python expertise than me could try adapting the code to keep this important site working I'd certainly help with the metadata parsing and such 👍

tml commented 3 years ago

What show/episode are you trying to watch?