aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--youtube_dl/extractor/openload.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/youtube_dl/extractor/openload.py b/youtube_dl/extractor/openload.py
index 216a40745..697f312c3 100644
--- a/youtube_dl/extractor/openload.py
+++ b/youtube_dl/extractor/openload.py
@@ -6,8 +6,10 @@ import re
from .common import InfoExtractor
from ..compat import compat_chr
from ..utils import (
+ determine_ext,
encode_base_n,
ExtractorError,
+ mimetype2ext,
)
@@ -96,17 +98,25 @@ class OpenloadIE(InfoExtractor):
r'<video[^>]+>\s*<script[^>]+>([^<]+)</script>',
webpage, 'JS code')
+ decoded = self.openload_decode(code)
+
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(
r'<span[^>]+class=["\']title["\'][^>]*>([^<]+)', webpage,
'title', default=None) or self._html_search_meta(
'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 {
'id': video_id,
'title': title,
+ 'ext': ext,
'thumbnail': self._og_search_thumbnail(webpage),
'url': video_url,
}