aboutsummaryrefslogtreecommitdiff
path: root/yt_dlp/extractor/shemaroome.py
diff options
context:
space:
mode:
Diffstat (limited to 'yt_dlp/extractor/shemaroome.py')
-rw-r--r--yt_dlp/extractor/shemaroome.py12
1 files changed, 5 insertions, 7 deletions
diff --git a/yt_dlp/extractor/shemaroome.py b/yt_dlp/extractor/shemaroome.py
index 284b2f89c..3ab322f67 100644
--- a/yt_dlp/extractor/shemaroome.py
+++ b/yt_dlp/extractor/shemaroome.py
@@ -1,11 +1,9 @@
import base64
from .common import InfoExtractor
-from ..aes import aes_cbc_decrypt, unpad_pkcs7
+from ..aes import aes_cbc_decrypt_bytes, unpad_pkcs7
from ..utils import (
ExtractorError,
- bytes_to_intlist,
- intlist_to_bytes,
unified_strdate,
)
@@ -68,10 +66,10 @@ class ShemarooMeIE(InfoExtractor):
data_json = self._download_json('https://www.shemaroome.com/users/user_all_lists', video_id, data=data.encode())
if not data_json.get('status'):
raise ExtractorError('Premium videos cannot be downloaded yet.', expected=True)
- url_data = bytes_to_intlist(base64.b64decode(data_json['new_play_url']))
- key = bytes_to_intlist(base64.b64decode(data_json['key']))
- iv = [0] * 16
- m3u8_url = unpad_pkcs7(intlist_to_bytes(aes_cbc_decrypt(url_data, key, iv))).decode('ascii')
+ url_data = base64.b64decode(data_json['new_play_url'])
+ key = base64.b64decode(data_json['key'])
+ iv = bytes(16)
+ m3u8_url = unpad_pkcs7(aes_cbc_decrypt_bytes(url_data, key, iv)).decode('ascii')
headers = {'stream_key': data_json['stream_key']}
formats, m3u8_subs = self._extract_m3u8_formats_and_subtitles(m3u8_url, video_id, fatal=False, headers=headers)
for fmt in formats: