X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fivi.py;h=b5a740a01e1d360ca667869edef88f85e3559842;hb=2391941f283a1107b01f9df76a8b0e521a5abe3b;hp=52b53bfebdeebc4e3526e332665f83785c36caad;hpb=25d3f770e6ef518a4230ad41bd4ea69dd2e851af;p=youtube-dl
diff --git a/youtube_dl/extractor/ivi.py b/youtube_dl/extractor/ivi.py
index 52b53bfeb..b5a740a01 100644
--- a/youtube_dl/extractor/ivi.py
+++ b/youtube_dl/extractor/ivi.py
@@ -1,8 +1,9 @@
# coding: utf-8
from __future__ import unicode_literals
-import re
import json
+import re
+import sys
from .common import InfoExtractor
from ..utils import (
@@ -91,11 +92,15 @@ class IviIE(InfoExtractor):
'contentid': video_id
}
]
- }).encode()
+ })
+
+ bundled = hasattr(sys, 'frozen')
for site in (353, 183):
- content_data = data % site
+ content_data = (data % site).encode()
if site == 353:
+ if bundled:
+ continue
try:
from Cryptodome.Cipher import Blowfish
from Cryptodome.Hash import CMAC
@@ -135,6 +140,10 @@ class IviIE(InfoExtractor):
extractor_msg = 'Video %s does not exist'
elif site == 353:
continue
+ elif bundled:
+ raise ExtractorError(
+ 'This feature does not work from bundled exe. Run youtube-dl from sources.',
+ expected=True)
elif not pycryptodomex_found:
raise ExtractorError(
'pycryptodomex not found. Please install it.',
@@ -230,7 +239,7 @@ class IviCompilationIE(InfoExtractor):
self.url_result(
'http://www.ivi.ru/watch/%s/%s' % (compilation_id, serie), IviIE.ie_key())
for serie in re.findall(
- r']+data-id="\1"' % compilation_id, html)]
+ r']+\bhref=["\']/watch/%s/(\d+)["\']' % compilation_id, html)]
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)