youtube-dl: Twitch live streams fail with Error 410: Gone
Checklist
-
I’m reporting a broken site support
-
I’ve verified that I’m running youtube-dl version 2020.05.29
-
I’ve checked that all provided URLs are alive and playable in a browser I have my browser configured to not play videos, but the videos are alive and the attached patch fixes playback of the videos.
-
I’ve checked that all URLs and arguments with special characters are properly quoted or escaped
-
I’ve searched the bugtracker for similar issues including closed ones
Verbose log
[debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: [‘–verbose’, ‘https://twitch.tv/brossentia’] [debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8 [debug] youtube-dl version 2020.05.29 [debug] Python version 3.8.3 (CPython) - Linux-5.6.9-x86_64-with-glibc2.29 [debug] exe versions: ffmpeg 4.2.2-1, ffprobe 4.2.2-1, rtmpdump 2.4 [debug] Proxy map: {} [twitch:stream] brossentia: Downloading stream JSON ERROR: Unable to download JSON metadata: HTTP Error 410: Gone (caused by <HTTPError 410: ‘Gone’>); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output. File “/usr/lib/python3/dist-packages/youtube_dl/extractor/common.py”, line 627, in _request_webpage return self._downloader.urlopen(url_or_request) File “/usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py”, line 2238, in urlopen return self._opener.open(req, timeout=self._socket_timeout) File “/usr/lib/python3.8/urllib/request.py”, line 531, in open response = meth(req, response) File “/usr/lib/python3.8/urllib/request.py”, line 640, in http_response response = self.parent.error( File “/usr/lib/python3.8/urllib/request.py”, line 569, in error return self._call_chain(*args) File “/usr/lib/python3.8/urllib/request.py”, line 502, in _call_chain result = func(*args) File “/usr/lib/python3.8/urllib/request.py”, line 649, in http_error_default raise HTTPError(req.full_url, code, msg, hdrs, fp)
Description
Looks like twitch removed the stream lookup by user name from the (obsolete) kraken API. Getting it by numerical user-id still works, but requires an additional request. The following patch fixes the issue:
About this issue
- Original URL
- State: closed
- Created 4 years ago
- Reactions: 29
- Comments: 19 (1 by maintainers)
Commits related to this issue
- [twitch:stream] Fix extraction (closes #25528) — committed to pareronia/youtube-dl by dstftw 4 years ago
- pull changes from remote master (#190) * [scrippsnetworks] Add new extractor(closes #19857)(closes #22981) * [teachable] Improve locked lessons detection (#23528) * [teachable] Fail with error ... — committed to skyme5/youtube-dl by skyme5 4 years ago
- pull changes from remote master (#191) * [scrippsnetworks] Add new extractor(closes #19857)(closes #22981) * [teachable] Improve locked lessons detection (#23528) * [teachable] Fail with error ... — committed to skyme5/youtube-dl by skyme5 4 years ago
This is another bug due to Twitch changes. #25531 has a patch.
Lets hope this doean’t take a month to push a new release for this utterly breaks Twitch. Thanks @slaz. Thanks people. Great work.0
@Salz feel like turning that patch into a PR?
Awesome! Got it to work!
@rooseveltrp sure, copy the patch into
/etc/portage/patches/net-misc/youtube-dl-2020.05.29/01-live-api.patch, and reinstall the packageemerge -av1 -j1 net-misc/youtube-dl.