|
@@ -1,10 +1,10 @@
|
|
-import os.path
|
|
|
|
import re
|
|
import re
|
|
|
|
|
|
from .common import InfoExtractor
|
|
from .common import InfoExtractor
|
|
from ..utils import (
|
|
from ..utils import (
|
|
compat_urllib_parse,
|
|
compat_urllib_parse,
|
|
- compat_urllib_parse_urlparse,
|
|
|
|
|
|
+ determine_ext,
|
|
|
|
+ ExtractorError,
|
|
)
|
|
)
|
|
|
|
|
|
class AUEngineIE(InfoExtractor):
|
|
class AUEngineIE(InfoExtractor):
|
|
@@ -25,22 +25,26 @@ class AUEngineIE(InfoExtractor):
|
|
title = self._html_search_regex(r'<title>(?P<title>.+?)</title>',
|
|
title = self._html_search_regex(r'<title>(?P<title>.+?)</title>',
|
|
webpage, u'title')
|
|
webpage, u'title')
|
|
title = title.strip()
|
|
title = title.strip()
|
|
- links = re.findall(r'[^A-Za-z0-9]?(?:file|url):\s*["\'](http[^\'"&]*)', webpage)
|
|
|
|
- links = [compat_urllib_parse.unquote(l) for l in links]
|
|
|
|
|
|
+ links = re.findall(r'\s(?:file|url):\s*["\']([^\'"]+)["\']', webpage)
|
|
|
|
+ links = map(compat_urllib_parse.unquote, links)
|
|
|
|
+
|
|
|
|
+ thumbnail = None
|
|
|
|
+ video_url = None
|
|
for link in links:
|
|
for link in links:
|
|
- root, pathext = os.path.splitext(compat_urllib_parse_urlparse(link).path)
|
|
|
|
- if pathext == '.png':
|
|
|
|
|
|
+ if link.endswith('.png'):
|
|
thumbnail = link
|
|
thumbnail = link
|
|
- elif pathext == '.mp4':
|
|
|
|
- url = link
|
|
|
|
- ext = pathext
|
|
|
|
|
|
+ elif '/videos/' in link:
|
|
|
|
+ video_url = link
|
|
|
|
+ if not video_url:
|
|
|
|
+ raise ExtractorError(u'Could not find video URL')
|
|
|
|
+ ext = u'.' + determine_ext(video_url)
|
|
if ext == title[-len(ext):]:
|
|
if ext == title[-len(ext):]:
|
|
title = title[:-len(ext)]
|
|
title = title[:-len(ext)]
|
|
- ext = ext[1:]
|
|
|
|
- return [{
|
|
|
|
|
|
+
|
|
|
|
+ return {
|
|
'id': video_id,
|
|
'id': video_id,
|
|
- 'url': url,
|
|
|
|
|
|
+ 'url': video_url,
|
|
'ext': ext,
|
|
'ext': ext,
|
|
'title': title,
|
|
'title': title,
|
|
'thumbnail': thumbnail,
|
|
'thumbnail': thumbnail,
|
|
- }]
|
|
|
|
|
|
+ }
|