youtube-dl: NBC site broken
Checklist
- [X ] I’m reporting a broken site support
- [X ] I’ve verified that I’m running youtube-dl version 2019.09.28
- [ X] I’ve checked that all provided URLs are alive and playable in a browser
- [X ] I’ve checked that all URLs and arguments with special characters are properly quoted or escaped
- [ X] I’ve searched the bugtracker for similar issues including closed ones
Verbose log
youtube-dl --hls-prefer-native https://www.nbc.com/dateline/video/the-plan/4040189 -v
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--hls-prefer-native', u'https://www.nbc.com/dateline/video/the-plan/4040189', u'-v']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2019.09.28
[debug] Python version 2.7.13 (CPython) - Linux-3.10.0-957.12.2.vz7.96.21-i686-with-debian-9.9
[debug] exe versions: ffmpeg 3.2.14-1, ffprobe 3.2.14-1, rtmpdump 2.4
[debug] Proxy map: {}
[NBC] 4040189: Downloading JSON metadata
Traceback (most recent call last):
File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/usr/local/bin/youtube-dl/__main__.py", line 19, in <module>
File "/usr/local/bin/youtube-dl/youtube_dl/__init__.py", line 474, in main
File "/usr/local/bin/youtube-dl/youtube_dl/__init__.py", line 464, in _real_main
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 2018, in download
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 796, in extract_info
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 530, in extract
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/nbc.py", line 94, in _real_extract
IndexError: list index out of range
Description
Latest NBC dateline episode plays via browser but Index Error via youtube-dl https://www.nbc.com/dateline/video/the-plan/4040189
About this issue
- Original URL
- State: closed
- Created 5 years ago
- Comments: 17 (10 by maintainers)
Commits related to this issue
- [nbc] Hardcode v3.14 API to pick up recent programs (fixes #22693) Starting in Oct. 2019, queries to the "v3" API started omitting recent programs that are otherwise viewable for free on the NBC webs... — committed to johnhawkinson/youtube-dl by johnhawkinson 5 years ago
- [nbc] switch to graphql api(closes #18581)(closes #22693)(closes #22701) — committed to meunierd/youtube-dl by remitamine 5 years ago
- [nbc] switch to graphql api(closes #18581)(closes #22693)(closes #22701) — committed to pareronia/youtube-dl by remitamine 5 years ago
This is just a temporary work-around for downloading NBC and NBC News videos until the programmers update the YT-DL code. This worked for me in downloading both today’s and last week’s Meet The Press and last night’s SNL.
Using the following as a template
https://player.theplatform.com/p/HNK2IC/uW4uIUm_KHR6/select/media/guid/2410887629/xxxxxxx
replace the seven x’s with the number of the video to be downloaded. The video’s number, currently, should begin with “404.” (The “404” has nothing to do with a 404 webpage.)
To get the video number, refer to the URL of the webpage containing the video. Today’s Meet The Press is:
https://www.nbc.com/meet-the-press/video/meet-the-press-101319/4047204
Note that the last number is 4047204
Replacing the 7 x’s in the template with 4047204, we have:
https://player.theplatform.com/p/HNK2IC/uW4uIUm_KHR6/select/media/guid/2410887629/4047204
The above URL will download (at the moment) in YT-DL. This may not last but might be helpful until the programmers update YT-DL.
Oh, also, do we want better error handling for this situation (“No metadata returned by API call.”), or is “IndexError: list index out of range” ok?