aboutsummaryrefslogtreecommitdiffstats
path: root/hypervideo_dl/extractor/mixcloud.py
diff options
context:
space:
mode:
Diffstat (limited to 'hypervideo_dl/extractor/mixcloud.py')
-rw-r--r--hypervideo_dl/extractor/mixcloud.py11
1 files changed, 3 insertions, 8 deletions
diff --git a/hypervideo_dl/extractor/mixcloud.py b/hypervideo_dl/extractor/mixcloud.py
index c2dd078..fb5a08c 100644
--- a/hypervideo_dl/extractor/mixcloud.py
+++ b/hypervideo_dl/extractor/mixcloud.py
@@ -1,15 +1,11 @@
-from __future__ import unicode_literals
-
import itertools
from .common import InfoExtractor
from ..compat import (
compat_b64decode,
- compat_chr,
compat_ord,
compat_str,
compat_urllib_parse_unquote,
- compat_zip
)
from ..utils import (
ExtractorError,
@@ -75,8 +71,8 @@ class MixcloudIE(MixcloudBaseIE):
def _decrypt_xor_cipher(key, ciphertext):
"""Encrypt/Decrypt XOR cipher. Both ways are possible because it's XOR."""
return ''.join([
- compat_chr(compat_ord(ch) ^ compat_ord(k))
- for ch, k in compat_zip(ciphertext, itertools.cycle(key))])
+ chr(compat_ord(ch) ^ compat_ord(k))
+ for ch, k in zip(ciphertext, itertools.cycle(key))])
def _real_extract(self, url):
username, slug = self._match_valid_url(url).groups()
@@ -163,6 +159,7 @@ class MixcloudIE(MixcloudBaseIE):
formats.append({
'format_id': 'http',
'url': decrypted,
+ 'vcodec': 'none',
'downloader_options': {
# Mixcloud starts throttling at >~5M
'http_chunk_size': 5242880,
@@ -172,8 +169,6 @@ class MixcloudIE(MixcloudBaseIE):
if not formats and cloudcast.get('isExclusive'):
self.raise_login_required(metadata_available=True)
- self._sort_formats(formats)
-
comments = []
for edge in (try_get(cloudcast, lambda x: x['comments']['edges']) or []):
node = edge.get('node') or {}