|
|
|
@ -300,6 +300,13 @@ class VKIE(VKBaseIE):
|
|
|
|
|
'only_matching': True,
|
|
|
|
|
}]
|
|
|
|
|
|
|
|
|
|
@staticmethod
|
|
|
|
|
def _extract_sibnet_urls(webpage):
|
|
|
|
|
# https://help.sibnet.ru/?sibnet_video_embed
|
|
|
|
|
return [unescapeHTML(mobj.group('url')) for mobj in re.finditer(
|
|
|
|
|
r'<iframe\b[^>]+\bsrc=(["\'])(?P<url>(?:https?:)?//video\.sibnet\.ru/shell\.php\?.*?\bvideoid=\d+.*?)\1',
|
|
|
|
|
webpage)]
|
|
|
|
|
|
|
|
|
|
def _real_extract(self, url):
|
|
|
|
|
mobj = re.match(self._VALID_URL, url)
|
|
|
|
|
video_id = mobj.group('videoid')
|
|
|
|
@ -408,6 +415,10 @@ class VKIE(VKBaseIE):
|
|
|
|
|
if odnoklassniki_url:
|
|
|
|
|
return self.url_result(odnoklassniki_url, OdnoklassnikiIE.ie_key())
|
|
|
|
|
|
|
|
|
|
sibnet_urls = self._extract_sibnet_urls(info_page)
|
|
|
|
|
if sibnet_urls:
|
|
|
|
|
return self.url_result(sibnet_urls[0])
|
|
|
|
|
|
|
|
|
|
m_opts = re.search(r'(?s)var\s+opts\s*=\s*({.+?});', info_page)
|
|
|
|
|
if m_opts:
|
|
|
|
|
m_opts_url = re.search(r"url\s*:\s*'((?!/\b)[^']+)", m_opts.group(1))
|
|
|
|
|