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.37k stars 9.96k forks source link

Unable to download videos from kika.de #31428

Open 1stoner opened 1 year ago

1stoner commented 1 year ago

Checklist

Verbose log

C:\Users\xyz\Desktop\YOUTUBE DL>youtube-dl.exe -v "https://www.kika.de/echt/videos/echt-staffel-drei-darum-geht-s-100"
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', 'https://www.kika.de/echt/videos/echt-staffel-drei-darum-geht-s-100']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.19041
[debug] exe versions: ffmpeg 4.2.1
[debug] Proxy map: {}
[generic] echt-staffel-drei-darum-geht-s-100: Requesting header
WARNING: Falling back on generic information extractor.
[generic] echt-staffel-drei-darum-geht-s-100: Downloading webpage
[generic] echt-staffel-drei-darum-geht-s-100: Extracting information
WARNING: [generic] echt-staffel-drei-darum-geht-s-100: Failed to parse JSON Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
WARNING: [generic] echt-staffel-drei-darum-geht-s-100: Failed to parse JSON Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
ERROR: Unsupported URL: https://www.kika.de/echt/videos/echt-staffel-drei-darum-geht-s-100
Traceback (most recent call last):
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\YoutubeDL.py", line 815, in wrapper
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\YoutubeDL.py", line 836, in __extract_info
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\extractor\common.py", line 534, in extract
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpupik7c6w\build\youtube_dl\extractor\generic.py", line 3489, in _real_extract
youtube_dl.utils.UnsupportedError: Unsupported URL: https://www.kika.de/echt/videos/echt-staffel-drei-darum-geht-s-100

Description

Since kika.de changed their website layout a few weeks ago it's no longer possible to download any video from it. It worked fine in the years before, and it's also on the list of supported sites.

dirkf commented 1 year ago

Yes, the problem page is quite different from what the extractor is expecting. MDR, which is handled by the same extractor, is still serving the expected structure.

A new extractor is needed for Kika. It appears to be redirecting the media request to a ZDF video platform:

        'docType': 'externalVideo',
        'id': 'echt-staffel-drei-darum-geht-s-100',
        'uuid': '2f6a339f-cd3a-45e4-b05f-c4a1797fe565',
        'externalId': 'zdf-SCMS_1ad8eaaa-cacf-45ef-a469-33910b288bbf-default',

The featured episode "Darum geht's" is only a trailer.

The previous episode of the series is available at https://www.zdf.de/kinder/echt/folge-10-s03-together-forever-100.html and so is the 1 minute trailer for "Darum geht's".

dirkf commented 1 year ago

See https://github.com/yt-dlp/yt-dlp/pull/5788. This code handles its test video fine but needs more work for the problem page.

dirkf commented 1 year ago

... but not very much:

$ python -m youtube_dl -F -v 'https://www.kika.de/echt/videos/echt-staffel-drei-darum-geht-s-100'
[debug] System config: [u'--prefer-ffmpeg']
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'-F', u'-v', u'https://www.kika.de/echt/videos/echt-staffel-drei-darum-geht-s-100']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Git HEAD: 774b346f9
[debug] Python version 2.7.18 (CPython) - Linux-4.4.0-210-generic-i686-with-Ubuntu-16.04-xenial
[debug] exe versions: avconv 4.3, avprobe 4.3, ffmpeg 4.3, ffprobe 4.3
[debug] Proxy map: {}
[debug] Using fake IP 53.145.21.144 (DE) as X-Forwarded-For.
[Kika] echt-staffel-drei-darum-geht-s-100: Downloading JSON metadata
[Kika] echt-staffel-drei-darum-geht-s-100: Downloading JSON metadata
[Kika] echt-staffel-drei-darum-geht-s-100: Downloading m3u8 information
[Kika] echt-staffel-drei-darum-geht-s-100: Checking mp4 video format URL
[Kika] echt-staffel-drei-darum-geht-s-100: Checking mp4 video format URL
[Kika] echt-staffel-drei-darum-geht-s-100: Checking mp4 video format URL
[Kika] echt-staffel-drei-darum-geht-s-100: Checking mp4 video format URL
[Kika] echt-staffel-drei-darum-geht-s-100: Checking mp4 video format URL
[Kika] echt-staffel-drei-darum-geht-s-100: Checking hls-414 video format URL
[Kika] echt-staffel-drei-darum-geht-s-100: Checking hls-636 video format URL
[Kika] echt-staffel-drei-darum-geht-s-100: Checking hls-1269 video format URL
[Kika] echt-staffel-drei-darum-geht-s-100: Checking hls-2564 video format URL
[info] Available formats for echt-staffel-drei-darum-geht-s-100:
format code  extension  resolution note
mp4-0        mp4        480x270      -2k video@  -1k, audio@ -1k, 0.00B
mp4-1        mp4        640x360      -2k video@  -1k, audio@ -1k, 0.00B
mp4-2        mp4        960x540      -2k video@  -1k, audio@ -1k, 0.00B
mp4-3        mp4        1024x576     -2k video@  -1k, audio@ -1k, 0.00B
mp4-4        mp4        1280x720     -2k video@  -1k, audio@ -1k, 0.00B
hls-414      mp4        480x270     414k , avc1.4d401f, 25.0fps, mp4a.40.2
hls-636      mp4        640x360     636k , avc1.4d401f, 25.0fps, mp4a.40.2
hls-1269     mp4        960x540    1269k , avc1.4d401f, 25.0fps, mp4a.40.2
hls-2564     mp4        1280x720   2564k , avc1.640028, 50.0fps, mp4a.40.2 (best)
$