0
0
Fork 0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2024-11-26 02:55:17 +00:00

[mixcloud] fallback to hardcoded decryption key(closes #18016)

This commit is contained in:
Remita Amine 2018-11-21 23:19:46 +01:00
parent 305ce767d5
commit 560020da30

View file

@ -161,11 +161,17 @@ def _real_extract(self, url):
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':