|
@ -3,10 +3,11 @@ from __future__ import unicode_literals |
|
|
|
|
|
|
|
|
from .common import InfoExtractor |
|
|
from .common import InfoExtractor |
|
|
from .vk import VKIE |
|
|
from .vk import VKIE |
|
|
from ..utils import ( |
|
|
|
|
|
HEADRequest, |
|
|
|
|
|
int_or_none, |
|
|
|
|
|
|
|
|
from ..compat import ( |
|
|
|
|
|
compat_b64decode, |
|
|
|
|
|
compat_urllib_parse_unquote, |
|
|
) |
|
|
) |
|
|
|
|
|
from ..utils import int_or_none |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class BIQLEIE(InfoExtractor): |
|
|
class BIQLEIE(InfoExtractor): |
|
@ -47,9 +48,16 @@ class BIQLEIE(InfoExtractor): |
|
|
if VKIE.suitable(embed_url): |
|
|
if VKIE.suitable(embed_url): |
|
|
return self.url_result(embed_url, VKIE.ie_key(), video_id) |
|
|
return self.url_result(embed_url, VKIE.ie_key(), video_id) |
|
|
|
|
|
|
|
|
self._request_webpage( |
|
|
|
|
|
HEADRequest(embed_url), video_id, headers={'Referer': url}) |
|
|
|
|
|
video_id, sig, _, access_token = self._get_cookies(embed_url)['video_ext'].value.split('%3A') |
|
|
|
|
|
|
|
|
embed_page = self._download_webpage( |
|
|
|
|
|
embed_url, video_id, headers={'Referer': url}) |
|
|
|
|
|
video_ext = self._get_cookies(embed_url).get('video_ext') |
|
|
|
|
|
if video_ext: |
|
|
|
|
|
video_ext = compat_urllib_parse_unquote(video_ext.value) |
|
|
|
|
|
if not video_ext: |
|
|
|
|
|
video_ext = compat_b64decode(self._search_regex( |
|
|
|
|
|
r'video_ext\s*:\s*[\'"]([A-Za-z0-9+/=]+)', |
|
|
|
|
|
embed_page, 'video_ext')).decode() |
|
|
|
|
|
video_id, sig, _, access_token = video_ext.split(':') |
|
|
item = self._download_json( |
|
|
item = self._download_json( |
|
|
'https://api.vk.com/method/video.get', video_id, |
|
|
'https://api.vk.com/method/video.get', video_id, |
|
|
headers={'User-Agent': 'okhttp/3.4.1'}, query={ |
|
|
headers={'User-Agent': 'okhttp/3.4.1'}, query={ |
|
|