blackjack4494 / youtube-dlc

Command-line program to download various media from YouTube.com and other sites
https://blackjack4494.github.io/youtube-dlc/
The Unlicense
1.22k stars 13 forks source link

[nick] not supported anymore due to complete website relaunch #44

Closed SeppSpenderRind closed 4 years ago

SeppSpenderRind commented 4 years ago

Checklist

Verbose log

D:\youtube-dl>youtube-dl --verbose https://www.nick.de/episodes/06ik5u/die-legende-von-korra-jenseits-der-geisterwelt-ep-10
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'https://www.nick.de/episodes/06ik5u/die-legende-von-korra-jenseits-der-geisterwelt-ep-10']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2020.07.28
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.19041
[debug] exe versions: none
[debug] Proxy map: {}
[nick.de] die-legende-von-korra-jenseits-der-geisterwelt-ep-10: Downloading webpage
ERROR: Unable to extract mrss url; 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\tmpq2whuxta\build\youtube_dl\YoutubeDL.py", line 797, in extract_info
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpq2whuxta\build\youtube_dl\extractor\common.py", line 530, in extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpq2whuxta\build\youtube_dl\extractor\nick.py", line 191, in _real_extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpq2whuxta\build\youtube_dl\extractor\nick.py", line 181, in _extract_mrss_url
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpq2whuxta\build\youtube_dl\extractor\common.py", line 1005, in _search_regex
youtube_dl.utils.RegexNotFoundError: Unable to extract mrss url; 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

As pointed out on https://github.com/ytdl-org/youtube-dl/issues/25065, nick.de uses a new stream infrastructure / new player similar to other Viacom channels like MTV.de, CC.com and nickjr.de (which are supported already). Therefore, nick.de links do not work with youtube-dl anymore.

Example links for single episode pages:

https://www.nick.de/episodes/06ik5u/die-legende-von-korra-jenseits-der-geisterwelt-ep-10
https://www.nick.de/episodes/t051ih/zoey-101-eine-hand-waescht-die-andere-staffel-3-ep-23
https://www.nick.de/episodes/7xp55o/pokemon-funkelnder-stern-der-heimat-so-fern-staffel-21-ep-25

Example links for season/show pages (including several episodes):

https://www.nick.de/shows/icarly/2zh6sc/staffel-3
https://www.nick.de/shows/tgo36o/rugrats
https://www.nick.de/shows/0fvug8/cosmo-wanda-wenn-elfen-helfen

Example links for clips:

https://www.nick.de/video/ymk48y/spongebob-schwammkopf-wurmige-freundschaft
https://www.nick.de/video/xz163s/henry-danger-henry-danger-serien-finale
https://www.nick.de/video/o23bpt/zuckerrausch
blackjack4494 commented 4 years ago

Sorry for the late response. I recently updated the mtv extractor. With minor modifications I can get nick.de working again.

luckydonald commented 4 years ago

Is this supposed to work with the merge above?

--verbose https://www.nick.de/episodes/db8ipb/kung-fu-panda-greisenweisheit-staffel-2-ep-1
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--audio-quality', '0', '--embed-thumbnail', '--add-metadata', '--format=mp4', '--verbose', 'https://www.nick.de/episodes/db8ipb/kung-fu-panda-greisenweisheit-staffel-2-ep-1']
[debug] Loading archive file None
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dlc version 2020.10.09
[debug] Git HEAD: 203fc46
[debug] Python version 3.7.2 (CPython) - Darwin-18.7.0-x86_64-i386-64bit
[debug] exe versions: avconv 12.3, avprobe 12.3, ffmpeg 4.3.1, ffprobe 4.3.1, rtmpdump 2.4
[debug] Proxy map: {}
[nick.de] kung-fu-panda-greisenweisheit-staffel-2-ep-1: Downloading webpage
ERROR: Unable to extract mrss url; 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-dlc with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/Users/luckydonald/.pyenv/versions/global-3.7.2/lib/python3.7/site-packages/youtube_dlc/YoutubeDL.py", line 830, in extract_info
    ie_result = ie.extract(url)
  File "/Users/luckydonald/.pyenv/versions/global-3.7.2/lib/python3.7/site-packages/youtube_dlc/extractor/common.py", line 532, in extract
    ie_result = self._real_extract(url)
  File "/Users/luckydonald/.pyenv/versions/global-3.7.2/lib/python3.7/site-packages/youtube_dlc/extractor/nick.py", line 191, in _real_extract
    mrss_url = self._extract_mrss_url(webpage, host)
  File "/Users/luckydonald/.pyenv/versions/global-3.7.2/lib/python3.7/site-packages/youtube_dlc/extractor/nick.py", line 181, in _extract_mrss_url
    r'data-mrss=(["\'])(?P<url>http.+?)\1', webpage, 'mrss url', group='url'),
  File "/Users/luckydonald/.pyenv/versions/global-3.7.2/lib/python3.7/site-packages/youtube_dlc/extractor/common.py", line 1010, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
youtube_dlc.utils.RegexNotFoundError: Unable to extract mrss url; 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-dlc with the --verbose flag and include its complete output.
blackjack4494 commented 4 years ago

@luckydonald nope nick.de wasn't part of it yet. However I made some fix for it which will be released within next few days

[nick.de] 604ea75c-4b18-11e7-a442-0e40cf2fc285: Downloading m3u8 information [download] Downloading playlist: Greisenweisheit [nick.de] playlist Greisenweisheit: Collected 1 video ids (downloading 1 of them) [download] Downloading video 1 of 1 [info] Available formats for 604ea75c-4b18-11e7-a442-0e40cf2fc285: format code extension resolution note hls-345 mp4 384x216 345k , avc1.4D401E, 25.0fps, mp4a.40.2 hls-559 mp4 512x288 559k , avc1.4D401E, 25.0fps, mp4a.40.2 hls-915 mp4 640x360 915k , avc1.4D401E, 25.0fps, mp4a.40.2 hls-1181 mp4 768x432 1181k , avc1.4D401E, 25.0fps, mp4a.40.2 hls-1666 mp4 960x540 1666k , avc1.4D401E, 25.0fps, mp4a.40.2 hls-2315 mp4 1280x720 2315k , avc1.640028, 25.0fps, mp4a.40.2 hls-4337 mp4 1920x1080 4337k , avc1.640028, 25.0fps, mp4a.40.2 (best) [download] Finished downloading playlist: Greisenweisheit

AtlanticPuffin commented 3 years ago

After trying to download https://www.nick.de/episodes/chrocq/spongebob-schwammkopf-die-abkuerzung-fahrschule-krabs-staffel-9-ep-12 youtube-dl resulted this:

youtube-dl.exe --verbose "https://www.nick.de/episodes/chrocq/spongebob-schwammkopf-die-abkuerzung-fahrschule-krabs-staffel-9-ep-12"
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'https://www.nick.de/episodes/chrocq/spongebob-schwammkopf-die-abkuerzung-fahrschule-krabs-staffel-9-ep-12']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2020.12.29
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.19041
[debug] exe versions: none
[debug] Proxy map: {}
[nick.de] spongebob-schwammkopf-die-abkuerzung-fahrschule-krabs-staffel-9-ep-12: Downloading webpage
ERROR: Unable to extract mrss url; 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\tmp581_vk6o\build\youtube_dl\YoutubeDL.py", line 803, in wrapper
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp581_vk6o\build\youtube_dl\YoutubeDL.py", line 824, in __extract_info
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp581_vk6o\build\youtube_dl\extractor\common.py", line 532, in extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp581_vk6o\build\youtube_dl\extractor\nick.py", line 191, in _real_extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp581_vk6o\build\youtube_dl\extractor\nick.py", line 181, in _extract_mrss_url
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmp581_vk6o\build\youtube_dl\extractor\common.py", line 1010, in _search_regex
youtube_dl.utils.RegexNotFoundError: Unable to extract mrss url; 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.

I'm not sure wether this is a new issue or this one should be reopened. I've checked the URL und encoding, also I've updated to the latest version.

hazcod commented 3 years ago

The downloading of episode URLs seems to work, but just passing the show page returns:

% python3 /Users/user/Library/Python/3.9/lib/python/site-packages/youtube_dlc \
  https://www.nickelodeon.nl/shows/76ypv4/spongebob \                                                                                 
  --no-check-certificate
[nick.de] spongebob: Downloading webpage
[nick.de] Downloading JSON metadata
WARNING: [nick.de] None: Failed to parse JSON Expecting value: line 1 column 1 (char 0)
[nick.de] No id found!
Traceback (most recent call last):
  File "/usr/local/Cellar/python@3.9/3.9.1_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/local/Cellar/python@3.9/3.9.1_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/Users/user/Library/Python/3.9/lib/python/site-packages/youtube_dlc/__main__.py", line 19, in <module>
    youtube_dlc.main()
  File "/Users/user/Library/Python/3.9/lib/python/site-packages/youtube_dlc/__init__.py", line 487, in main
    _real_main(argv)
  File "/Users/user/Library/Python/3.9/lib/python/site-packages/youtube_dlc/__init__.py", line 477, in _real_main
    retcode = ydl.download(all_urls)
  File "/Users/user/Library/Python/3.9/lib/python/site-packages/youtube_dlc/YoutubeDL.py", line 2103, in download
    res = self.extract_info(
  File "/Users/user/Library/Python/3.9/lib/python/site-packages/youtube_dlc/YoutubeDL.py", line 830, in extract_info
    ie_result = ie.extract(url)
  File "/Users/user/Library/Python/3.9/lib/python/site-packages/youtube_dlc/extractor/common.py", line 532, in extract
    ie_result = self._real_extract(url)
  File "/Users/user/Library/Python/3.9/lib/python/site-packages/youtube_dlc/extractor/mtv.py", line 341, in _real_extract
    videos_info = self._get_videos_info(mgid, url=url)
  File "/Users/user/Library/Python/3.9/lib/python/site-packages/youtube_dlc/extractor/mtv.py", line 215, in _get_videos_info
    video_id = self._id_from_uri(uri)
  File "/Users/user/Library/Python/3.9/lib/python/site-packages/youtube_dlc/extractor/mtv.py", line 41, in _id_from_uri
    return uri.split(':')[-1]
AttributeError: 'NoneType' object has no attribute 'split'