|
@@ -6,10 +6,10 @@ import re
|
|
|
from .common import InfoExtractor
|
|
|
from ..utils import (
|
|
|
determine_ext,
|
|
|
+ ExtractorError,
|
|
|
js_to_json,
|
|
|
strip_jsonp,
|
|
|
unified_strdate,
|
|
|
- ExtractorError,
|
|
|
update_url_query,
|
|
|
urlhandle_detect_ext,
|
|
|
)
|
|
@@ -17,7 +17,7 @@ from ..utils import (
|
|
|
|
|
|
class WDRIE(InfoExtractor):
|
|
|
_CURRENT_MAUS_URL = r'https?://(?:www\.)wdrmaus.de/(?:[^/]+/){1,2}[^/?#]+\.php5'
|
|
|
- _PAGE_REGEX = r'/(?:mediathek/)?(?P<media_type>[^/]+)/(?P<type>[^/]+)/(?P<display_id>.+)\.html'
|
|
|
+ _PAGE_REGEX = r'/(?:mediathek/)?[^/]+/(?P<type>[^/]+)/(?P<display_id>.+)\.html'
|
|
|
_VALID_URL = r'(?P<page_url>https?://(?:www\d\.)?wdr\d?\.de)' + _PAGE_REGEX + '|' + _CURRENT_MAUS_URL
|
|
|
|
|
|
_TESTS = [
|
|
@@ -162,10 +162,9 @@ class WDRIE(InfoExtractor):
|
|
|
|
|
|
ext = determine_ext(medium_url)
|
|
|
if ext == 'm3u8':
|
|
|
- m3u_fmt = self._extract_m3u8_formats(
|
|
|
+ formats.extend(self._extract_m3u8_formats(
|
|
|
medium_url, display_id, 'mp4', 'm3u8_native',
|
|
|
- m3u8_id='hls')
|
|
|
- formats.extend(m3u_fmt)
|
|
|
+ m3u8_id='hls'))
|
|
|
elif ext == 'f4m':
|
|
|
manifest_url = update_url_query(
|
|
|
medium_url, {'hdcore': '3.2.0', 'plugin': 'aasp-3.2.0.77.18'})
|
|
@@ -185,6 +184,8 @@ class WDRIE(InfoExtractor):
|
|
|
a_format['ext'] = ext
|
|
|
formats.append(a_format)
|
|
|
|
|
|
+ self._sort_formats(formats)
|
|
|
+
|
|
|
subtitles = {}
|
|
|
caption_url = metadata_media_resource.get('captionURL')
|
|
|
if caption_url:
|
|
@@ -206,8 +207,6 @@ class WDRIE(InfoExtractor):
|
|
|
if upload_date:
|
|
|
upload_date = unified_strdate(upload_date)
|
|
|
|
|
|
- self._sort_formats(formats)
|
|
|
-
|
|
|
return {
|
|
|
'id': metadata_tracker_data.get('trackerClipId', display_id),
|
|
|
'display_id': display_id,
|