commit: 560020da3049bec19e5714e9e24fc90fadd06582
parent 305ce767d586e8796d873270abf771e69ff5586c
Author: Remita Amine <remitamine@gmail.com>
Date: Wed, 21 Nov 2018 23:19:46 +0100
[mixcloud] fallback to hardcoded decryption key(closes #18016)
Diffstat:
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/youtube_dl/extractor/mixcloud.py b/youtube_dl/extractor/mixcloud.py
@@ -161,11 +161,17 @@ class MixcloudIE(InfoExtractor):
stream_info = info_json['streamInfo']
formats = []
+ def decrypt_url(f_url):
+ for k in (key, 'IFYOUWANTTHEARTISTSTOGETPAIDDONOTDOWNLOADFROMMIXCLOUD'):
+ decrypted_url = self._decrypt_xor_cipher(k, compat_b64decode(f_url))
+ if re.search(r'^https?://[0-9a-z.]+/[0-9A-Za-z/.?=&_-]+$', decrypted_url):
+ return decrypted_url
+
for url_key in ('url', 'hlsUrl', 'dashUrl'):
format_url = stream_info.get(url_key)
if not format_url:
continue
- decrypted = self._decrypt_xor_cipher(key, compat_b64decode(format_url))
+ decrypted = decrypt_url(format_url)
if not decrypted:
continue
if url_key == 'hlsUrl':