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.96k stars 10.01k forks source link

Failed to Download from Mixcloud - Apparent SSL Certificate Failure #27359

Open Gho57X90 opened 3 years ago

Gho57X90 commented 3 years ago

Checklist:

Description:

I attempted to download a radio show episode hosted on Mixcloud, but I appear to only be getting SSL certificate errors with any uploaded episode I attempt to download. I am not aware of how to solve an SSL certificate issue, or if there's even anything I can personally do to fix it.

The target content appears to play just fine, so I'm unsure of what steps to take with this.

Verbose Log:

C:\youtube-dl>youtube-dl.exe --verbose https://www.mixcloud.com/deadmau5/deadmau5-presents-mau5trap-radio-065-with-posij-guest-mix/
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'https://www.mixcloud.com/deadmau5/deadmau5-presents-mau5trap-radio-065-with-posij-guest-mix/']
[debug] Encodings: locale cp1252, fs mbcs, out cp437, pref cp1252
[debug] youtube-dl version 2020.12.09
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.19041
[debug] exe versions: ffmpeg git-2020-07-24-21442a8
[debug] Proxy map: {}
[mixcloud] deadmau5_deadmau5-presents-mau5trap-radio-065-with-posij-guest-mix: Downloading JSON metadata
[mixcloud] deadmau5_deadmau5-presents-mau5trap-radio-065-with-posij-guest-mix: Downloading m3u8 information
WARNING: Failed to download m3u8 information: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)>
[mixcloud] deadmau5_deadmau5-presents-mau5trap-radio-065-with-posij-guest-mix: Downloading MPD manifest
WARNING: Failed to download MPD manifest: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)>
[debug] Default format spec: bestvideo+bestaudio/best
[debug] Invoking downloader on 'https://stream4.mixcloud.com/secure/c/m4a/64/3/c/f/4/ead2-2924-4af1-a939-44cd3b07847c.m4a?sig=q9gFWiVFTuKeXI1-oXrb4Q'
ERROR: unable to download video data: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)>
Traceback (most recent call last):
  File "C:\Python\Python34\lib\urllib\request.py", line 1183, in do_open
  File "C:\Python\Python34\lib\http\client.py", line 1137, in request
  File "C:\Python\Python34\lib\http\client.py", line 1182, in _send_request
  File "C:\Python\Python34\lib\http\client.py", line 1133, in endheaders
  File "C:\Python\Python34\lib\http\client.py", line 963, in _send_output
  File "C:\Python\Python34\lib\http\client.py", line 898, in send
  File "C:\Python\Python34\lib\http\client.py", line 1287, in connect
  File "C:\Python\Python34\lib\ssl.py", line 362, in wrap_socket
  File "C:\Python\Python34\lib\ssl.py", line 580, in __init__
  File "C:\Python\Python34\lib\ssl.py", line 807, in do_handshake
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpmwcir7fk\build\youtube_dl\YoutubeDL.py", line 1936, in process_info
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpmwcir7fk\build\youtube_dl\YoutubeDL.py", line 1875, in dl
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpmwcir7fk\build\youtube_dl\downloader\common.py", line 366, in download
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpmwcir7fk\build\youtube_dl\downloader\http.py", line 351, in real_download
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpmwcir7fk\build\youtube_dl\downloader\http.py", line 116, in establish_connection
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpmwcir7fk\build\youtube_dl\downloader\http.py", line 110, in establish_connection
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpmwcir7fk\build\youtube_dl\YoutubeDL.py", line 2248, in urlopen
  File "C:\Python\Python34\lib\urllib\request.py", line 464, in open
  File "C:\Python\Python34\lib\urllib\request.py", line 482, in _open
  File "C:\Python\Python34\lib\urllib\request.py", line 442, in _call_chain
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpmwcir7fk\build\youtube_dl\utils.py", line 2736, in https_open
  File "C:\Python\Python34\lib\urllib\request.py", line 1185, in do_open
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)>
october262 commented 3 years ago

try youtube-dl --no-part --restrict-filenames "https://audio8.mixcloud.com/secure/dash2/3/c/f/4/ead2-2924-4af1-a939-44cd3b07847c.m4a/manifest.mpd"

ghost commented 3 years ago

I also have this issue using version 2020.12.31.

$ youtube-dl --verbose "http://www.mixcloud.com/Podcastextra/90s-megamix-dance-hits-of-the-90s-epic-2-hour-by-dj-alex-k/"

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'http://www.mixcloud.com/Podcastextra/90s-megamix-dance-hits-of-the-90s-epic-2-hour-by-dj-alex-k/']
[debug] Encodings: locale cp1252, fs mbcs, out cp1252, pref cp1252
[debug] youtube-dl version 2020.12.31
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.18362
[debug] exe versions: ffmpeg git-2020-04-17-889ad93, ffprobe git-2020-04-17-889ad93
[debug] Proxy map: {}
[mixcloud] Podcastextra_90s-megamix-dance-hits-of-the-90s-epic-2-hour-by-dj-alex-k: Downloading JSON metadata
[mixcloud] Podcastextra_90s-megamix-dance-hits-of-the-90s-epic-2-hour-by-dj-alex-k: Downloading m3u8 information
WARNING: Failed to download m3u8 information: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)>
[mixcloud] Podcastextra_90s-megamix-dance-hits-of-the-90s-epic-2-hour-by-dj-alex-k: Downloading MPD manifest
WARNING: Failed to download MPD manifest: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)>
[debug] Default format spec: bestvideo+bestaudio/best
[debug] Invoking downloader on 'https://stream8.mixcloud.com/secure/c/m4a/64/1/0/f/b/a62d-4fc6-42c4-8bd5-27cccaa98fc5.m4a?sig=dePD-y6-6XxXMczKgSfYqQ'
ERROR: unable to download video data: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)>
Traceback (most recent call last):
  File "C:\Python\Python34\lib\urllib\request.py", line 1183, in do_open
  File "C:\Python\Python34\lib\http\client.py", line 1137, in request
  File "C:\Python\Python34\lib\http\client.py", line 1182, in _send_request
  File "C:\Python\Python34\lib\http\client.py", line 1133, in endheaders
  File "C:\Python\Python34\lib\http\client.py", line 963, in _send_output
  File "C:\Python\Python34\lib\http\client.py", line 898, in send
  File "C:\Python\Python34\lib\http\client.py", line 1287, in connect
  File "C:\Python\Python34\lib\ssl.py", line 362, in wrap_socket
  File "C:\Python\Python34\lib\ssl.py", line 580, in __init__
  File "C:\Python\Python34\lib\ssl.py", line 807, in do_handshake
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpabf7r3hs\build\youtube_dl\YoutubeDL.py", line 1936, in process_info
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpabf7r3hs\build\youtube_dl\YoutubeDL.py", line 1875, in dl
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpabf7r3hs\build\youtube_dl\downloader\common.py", line 366, in download
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpabf7r3hs\build\youtube_dl\downloader\http.py", line 351, in real_download
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpabf7r3hs\build\youtube_dl\downloader\http.py", line 116, in establish_connection
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpabf7r3hs\build\youtube_dl\downloader\http.py", line 110, in establish_connection
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpabf7r3hs\build\youtube_dl\YoutubeDL.py", line 2248, in urlopen
  File "C:\Python\Python34\lib\urllib\request.py", line 464, in open
  File "C:\Python\Python34\lib\urllib\request.py", line 482, in _open
  File "C:\Python\Python34\lib\urllib\request.py", line 442, in _call_chain
  File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpabf7r3hs\build\youtube_dl\utils.py", line 2736, in https_open
  File "C:\Python\Python34\lib\urllib\request.py", line 1185, in do_open
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)>

@october262 Unfortunately, your suggestion did not fix the issue.

Passing "--no-check-certificate" allows downloading, but is obviously not helpful from a security standpoint