question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[Deutsche Welle] An extractor error has occurred. (caused by KeyError('media_title'))

See original GitHub issue

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

  • I understand that I will be blocked if I remove or skip any mandatory* field

Checklist

  • I’m reporting a broken site
  • I’ve verified that I’m running yt-dlp version 2022.09.01 (update instructions) or later (specify commit)
  • I’ve checked that all provided URLs are playable in a browser with the same IP and same login details
  • 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. DO NOT post duplicates
  • I’ve read the guidelines for opening an issue
  • I’ve read about sharing account credentials and I’m willing to share it if required

Region

Germany

Provide a description that is worded well enough to be understood

I’m trying to download this Deutsche Welle podcast (only audio!) https://www.dw.com/de/wenn-der-strom-aus-der-luft-kommt/av-63153677 with ArchLinux youtube-dlp (up-to-date): It fails with the KeyError('media_title') error.

This URL doesn’t contain characters which need escaping.

The error seems to be the same like in the otherwise unrelated issue https://github.com/yt-dlp/yt-dlp/issues/2606

Provide verbose output that clearly demonstrates the problem

  • Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
  • Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output

[papa@main podcast]$ youtube-dl -vU https://www.dw.com/de/wenn-der-strom-aus-der-luft-kommt/av-63153677
[debug] Command-line config: ['-vU', 'https://www.dw.com/de/wenn-der-strom-aus-der-luft-kommt/av-63153677']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version 2022.09.01 [5d7c7d6]
[debug] Python 3.10.7 (CPython 64bit) - Linux-5.19.8-arch1-1-x86_64-with-glibc2.36 (glibc 2.36)
[debug] Checking exe version: ffmpeg -bsfs
[debug] Checking exe version: ffprobe -bsfs
[debug] exe versions: ffmpeg N-107098-g4d45f5acbd (setts), ffprobe N-107098-g4d45f5acbd, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.12.0, brotlicffi-1.0.9.2, certifi-2022.09.14, mutagen-1.45.1, secretstorage-3.3.3, sqlite3-2.6.0, websockets-10.3
[debug] Proxy map: {}
[debug] Loaded 1670 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version: 2022.09.01, Current version: 2022.09.01
yt-dlp is up to date (2022.09.01)
[debug] [dw] Extracting URL: https://www.dw.com/de/wenn-der-strom-aus-der-luft-kommt/av-63153677
[dw] 63153677: Downloading webpage
ERROR: 63153677: An extractor error has occurred. (caused by KeyError('media_title')); please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
  File "/usr/lib/python3.10/site-packages/yt_dlp/extractor/common.py", line 670, in extract
    ie_result = self._real_extract(url)
  File "/usr/lib/python3.10/site-packages/yt_dlp/extractor/dw.py", line 53, in _real_extract
    title = hidden_inputs['media_title']
KeyError: 'media_title'

Issue Analytics

  • State:open
  • Created a year ago
  • Comments:9 (5 by maintainers)

github_iconTop GitHub Comments

2reactions
dirkfcommented, Sep 19, 2022

It’s just the extraction logic.

Normally (default) yt-dl[p] tries to match the to-be-extracted URL (possibly also checking the page that the URL gives) against the available extractors. The --ies .../--force-generic options change that by forcibly applying an extractor that wouldn’t have been selected.

Thus, by default:

  1. match DW URL against extractors
  2. select DWIE by URL match
  3. fail to extract anything
  4. give up (never trying Generic).

While in yt-dlp with --ies generic, default:

  1. forcibly select GenericIE (which matches any URL)
  2. find the embedded HTML5 using the HTML5EmbedIE extractor (enabled because of default)
  3. return extracted HTML5
  4. that’s it.

For yt-dl with --force-generic it’s similar, but the HTML5 extraction is (for now) in-line in the GenericIE.

2reactions
dirkfcommented, Sep 18, 2022

In yt-dlp and yt-dl, --force-generic captures this HTML5 source.

Read more comments on GitHub >

github_iconTop Results From Across the Web

PBS: An extractor error has occurred. (caused by KeyError ...
Checklist I'm reporting a broken site I've verified that I'm running yt-dlp version 2022.01.21. (update instructions) I've checked that all ...
Read more >
youtube_dl.utils.ExtractorError: An extractor error has occurred ...
(caused by KeyError('media',)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl ...
Read more >
Youtube-dl KeyError: 'entries' - python - Stack Overflow
Obviously your playlist_dict doesn't have key 'entries' . It is hard to say, why. Try checking what you still have in playlist_dict ....
Read more >
An extractor error has occurred. (caused by KeyError('asset ...
Checklist. I'm reporting a broken site support; I've verified that I'm running youtube-dl version 2021.12.17; I've checked that all provided ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found