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
132.48k stars 10.05k forks source link

ESPN: The Last Dance not working #25305

Open draft19 opened 4 years ago

draft19 commented 4 years ago

Verbose log

$ youtube-dl --verbose 'https://www.espn.com/watch/player/_/id/6fbad816-31dd-47a6-ad2e-776e96eaa6c3/bucketId/33086'
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--verbose', u'https://www.espn.com/watch/player/_/id/6fbad816-31dd-47a6-ad2e-776e96eaa6c3/bucketId/33086']
[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.17 (CPython) - Darwin-18.7.0-x86_64-i386-64bit
[debug] exe versions: ffmpeg 4.2.2, ffprobe 4.2.2, rtmpdump 2.4
[debug] Proxy map: {}
[ESPN] 6: Downloading JSON metadata
ERROR: Unable to download JSON metadata: HTTP Error 400: Bad Request (caused by HTTPError()); 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.
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 627, in _request_webpage
    return self._downloader.urlopen(url_or_request)
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 2238, in urlopen
    return self._opener.open(req, timeout=self._socket_timeout)
  File "/usr/local/Cellar/python@2/2.7.17_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 435, in open
    response = meth(req, response)
  File "/usr/local/Cellar/python@2/2.7.17_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 548, in http_response
    'http', request, response, code, msg, hdrs)
  File "/usr/local/Cellar/python@2/2.7.17_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 473, in error
    return self._call_chain(*args)
  File "/usr/local/Cellar/python@2/2.7.17_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 407, in _call_chain
    result = func(*args)
  File "/usr/local/Cellar/python@2/2.7.17_1/Frameworks/Python.framework/

Description

Downloading The Last Dance from ESPN fails. Per another request, copying out the content URL and using that also fails (see below).

$ youtube-dl 'https://content.uplynk.com/ext/d09b16c953aa40c98dd8c513526aca5a/a113018464.m3u8?oid=d09b16c953aa40c98dd8c513526aca5a&amp'
[uplynk] a113018464: Downloading m3u8 information
[uplynk] a113018464: Downloading JSON metadata
[hlsnative] Downloading m3u8 manifest
WARNING: hlsnative has detected features it does not support, extraction will be delegated to ffmpeg
[download] Destination: The Last Dance - Episode One-84a8e5ca2b774ebb854c88ce98e1317e.mp4
ffmpeg version 4.2.2 Copyright (c) 2000-2019 the FFmpeg developers
  built with Apple clang version 11.0.0 (clang-1100.0.33.17)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.2.2_3 --enable-shared --enable-pthreads --enable-version3 --enable-avresample --cc=clang --host-cflags=-fno-stack-check --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libmp3lame --enable-libopus --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-libsoxr --enable-videotoolbox --disable-libjack --disable-indev=jack
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
[hls @ 0x7ff932000000] Skip ('#EXT-X-VERSION:5')
[hls @ 0x7ff932000000] Skip ('#UPLYNK-SEGMENT: 84a8e5ca2b774ebb854c88ce98e1317e,00000000,segment')
[hls @ 0x7ff932000000] Skip ('#UPLYNK-KEY:https://content-ausc4.uplynk.com/check?b=84a8e5ca2b774ebb854c88ce98e1317e&v=84a8e5ca2b774ebb854c88ce98e1317e&pbs=')
[hls @ 0x7ff932000000] Skip ('#EXT-X-PROGRAM-DATE-TIME:2020-05-17T14:54:35.718000+00:00')
[hls @ 0x7ff932000000] Skip ('#EXT-X-DISCONTINUITY')
[hls @ 0x7ff932000000] Skip ('#EXT-X-PROGRAM-DATE-TIME:2020-05-17T15:12:06.067312+00:00')
[hls @ 0x7ff932000000] Skip ('#EXT-X-DISCONTINUITY')
[hls @ 0x7ff932000000] Skip ('#EXT-X-PROGRAM-DATE-TIME:2020-05-17T15:24:03.717583+00:00')
[hls @ 0x7ff932000000] Skip ('#EXT-X-DISCONTINUITY')
[hls @ 0x7ff932000000] Skip ('#EXT-X-PROGRAM-DATE-TIME:2020-05-17T15:35:59.432583+00:00')
[hls @ 0x7ff932000000] Opening 'https://content-ausc4.uplynk.com/check2?b=84a8e5ca2b774ebb854c88ce98e1317e&v=84a8e5ca2b774ebb854c88ce98e1317e&r=f&pbs=' for reading
[https @ 0x7ff931e28840] HTTP error 403 Forbidden
[hls @ 0x7ff932000000] Unable to open key file https://content-ausc4.uplynk.com/check2?b=84a8e5ca2b774ebb854c88ce98e1317e&v=84a8e5ca2b774ebb854c88ce98e1317e&r=f&pbs=
[hls @ 0x7ff932000000] Opening 'crypto+http://x-default-stgec.uplynk.com/ause/slices/84a/d09b16c953aa40c98dd8c513526aca5a/84a8e5ca2b774ebb854c88ce98e1317e/F00000000.ts?x=0&si=0' for reading
[hls @ 0x7ff932000000] Error when loading first segment 'http://x-default-stgec.uplynk.com/ause/slices/84a/d09b16c953aa40c98dd8c513526aca5a/84a8e5ca2b774ebb854c88ce98e1317e/F00000000.ts?x=0&si=0'
http://content-ausc4.uplynk.com/84a8e5ca2b774ebb854c88ce98e1317e/f.m3u8: Invalid data found when processing input

ERROR: ffmpeg exited with code 1
enormouspoon commented 3 years ago

Did something change with ESPN in mid May? Seems like something changed as ESPN download attempts have since failed with:

ERROR: Unable to download JSON metadata: HTTP Error 400: Bad Request

In case it helps, I use Disney+ to log into ESPN, so I don't authenticate separately with a TV service. I still get that same error.