projects
/
youtube-dl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge remote-tracking branch 'adammw/tenplay'
[youtube-dl]
/
youtube_dl
/
extractor
/
tagesschau.py
diff --git
a/youtube_dl/extractor/tagesschau.py
b/youtube_dl/extractor/tagesschau.py
index e2ad7c393cb8ca1172bce18e6ae81d3a045da907..25b9864add9dc8422a5948111d25ea8243e10441 100644
(file)
--- a/
youtube_dl/extractor/tagesschau.py
+++ b/
youtube_dl/extractor/tagesschau.py
@@
-7,7
+7,7
@@
from .common import InfoExtractor
class TagesschauIE(InfoExtractor):
class TagesschauIE(InfoExtractor):
- _VALID_URL = r'https?://(?:www\.)?tagesschau\.de/multimedia/video/video(?P<id>-?
\d
+)\.html'
+ _VALID_URL = r'https?://(?:www\.)?tagesschau\.de/multimedia/video/video(?P<id>-?
[0-9]
+)\.html'
_TESTS = [{
'url': 'http://www.tagesschau.de/multimedia/video/video1399128.html',
_TESTS = [{
'url': 'http://www.tagesschau.de/multimedia/video/video1399128.html',
@@
-20,16
+20,22
@@
class TagesschauIE(InfoExtractor):
'thumbnail': 're:^http:.*\.jpg$',
},
}, {
'thumbnail': 're:^http:.*\.jpg$',
},
}, {
- 'url': 'http://www.tagesschau.de/multimedia/video/video-
196
.html',
- 'md5': '
8aaa8bf3ae1ca2652309718c03019128
',
+ 'url': 'http://www.tagesschau.de/multimedia/video/video-
5964
.html',
+ 'md5': '
66652566900963a3f962333579eeffcf
',
'info_dict': {
'info_dict': {
- 'id': '
196
',
+ 'id': '
5964
',
'ext': 'mp4',
'ext': 'mp4',
- 'title': '
Ukraine-Konflikt: Klitschko in Kiew als B\xfcrgermeister vereidigt
',
- 'description': 'md5:
f22e4af75821d174fa6c977349682691
',
+ 'title': '
Nahost-Konflikt: Israel bombadiert Ziele im Gazastreifen und Westjordanland
',
+ 'description': 'md5:
07bfc78c48eec3145ed4805299a1900a
',
'thumbnail': 're:http://.*\.jpg',
},
'thumbnail': 're:http://.*\.jpg',
},
- }]
+ }]
+
+ _FORMATS = {
+ 's': {'width': 256, 'height': 144, 'quality': 1},
+ 'm': {'width': 512, 'height': 288, 'quality': 2},
+ 'l': {'width': 960, 'height': 544, 'quality': 3},
+ }
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
@@
-43,31
+49,22
@@
class TagesschauIE(InfoExtractor):
webpage = self._download_webpage(url, display_id)
playerpage = self._download_webpage(
webpage = self._download_webpage(url, display_id)
playerpage = self._download_webpage(
- 'http://www.tagesschau.de/multimedia/video/video%s~player_autoplay-true.html' % video_id, display_id, 'Downloading player page')
+ 'http://www.tagesschau.de/multimedia/video/video%s~player_autoplay-true.html' % video_id,
+ display_id, 'Downloading player page')
- medias = re.findall(r'"(http://media.+?)", type:"video/(.+?)", quality:"(.+?)"', playerpage)
+ medias = re.findall(
+ r'"(http://media.+?)", type:"video/(.+?)", quality:"(.+?)"',
+ playerpage)
formats = []
for url, ext, res in medias:
formats = []
for url, ext, res in medias:
-
- if res == 's':
- res = 'small'
- quality = 0
- elif res == 'm':
- res = 'medium'
- quality = 1
- elif res == 'l':
- res = 'large'
- quality = 2
- else:
- quality = 0
-
- formats.append({
- 'format_id': res+'_'+ext,
+ f = {
+ 'format_id': res + '_' + ext,
'url': url,
'url': url,
- 'quality': quality,
'ext': ext,
'ext': ext,
- })
+ }
+ f.update(self._FORMATS.get(res, {}))
+ formats.append(f)
self._sort_formats(formats)
self._sort_formats(formats)
@@
-76,7
+73,7
@@
class TagesschauIE(InfoExtractor):
return {
'id': display_id,
'title': self._og_search_title(webpage).strip(),
return {
'id': display_id,
'title': self._og_search_title(webpage).strip(),
- 'thumbnail': 'http://www.tagesschau.de'
+
thumbnail,
+ 'thumbnail': 'http://www.tagesschau.de'
+
thumbnail,
'formats': formats,
'description': self._og_search_description(webpage).strip(),
}
'formats': formats,
'description': self._og_search_description(webpage).strip(),
}