[openload] Fix ext extraction

This commit is contained in:
Sergey M․ 2016-04-25 00:03:29 +06:00
parent eb9ee19422
commit 594b0c4c69
No known key found for this signature in database
GPG key ID: 2C393E0F18A9236D

View file

@ -6,8 +6,10 @@
from .common import InfoExtractor from .common import InfoExtractor
from ..compat import compat_chr from ..compat import compat_chr
from ..utils import ( from ..utils import (
determine_ext,
encode_base_n, encode_base_n,
ExtractorError, ExtractorError,
mimetype2ext,
) )
@ -96,17 +98,25 @@ def _real_extract(self, url):
r'<video[^>]+>\s*<script[^>]+>([^<]+)</script>', r'<video[^>]+>\s*<script[^>]+>([^<]+)</script>',
webpage, 'JS code') webpage, 'JS code')
decoded = self.openload_decode(code)
video_url = self._search_regex( video_url = self._search_regex(
r'return\s+"(https?://[^"]+)"', self.openload_decode(code), 'video URL') r'return\s+"(https?://[^"]+)"', decoded, 'video URL')
title = self._og_search_title(webpage, default=None) or self._search_regex( title = self._og_search_title(webpage, default=None) or self._search_regex(
r'<span[^>]+class=["\']title["\'][^>]*>([^<]+)', webpage, r'<span[^>]+class=["\']title["\'][^>]*>([^<]+)', webpage,
'title', default=None) or self._html_search_meta( 'title', default=None) or self._html_search_meta(
'description', webpage, 'title', fatal=True) 'description', webpage, 'title', fatal=True)
ext = mimetype2ext(self._search_regex(
r'window\.vt\s*=\s*(["\'])(?P<mimetype>.+?)\1', decoded,
'mimetype', default=None, group='mimetype')) or determine_ext(
video_url, 'mp4')
return { return {
'id': video_id, 'id': video_id,
'title': title, 'title': title,
'ext': ext,
'thumbnail': self._og_search_thumbnail(webpage), 'thumbnail': self._og_search_thumbnail(webpage),
'url': video_url, 'url': video_url,
} }