projects
/
youtube-dl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[nba] use xpath utils
[youtube-dl]
/
youtube_dl
/
extractor
/
dfb.py
diff --git
a/youtube_dl/extractor/dfb.py
b/youtube_dl/extractor/dfb.py
index 8049779b0a31049f704bae256a3752a9a22ad789..263532cc6e66a94c79670caa5e1600444ce909da 100644
(file)
--- a/
youtube_dl/extractor/dfb.py
+++ b/
youtube_dl/extractor/dfb.py
@@
-3,42
+3,47
@@
from __future__ import unicode_literals
import re
from .common import InfoExtractor
import re
from .common import InfoExtractor
+from ..utils import unified_strdate
class DFBIE(InfoExtractor):
IE_NAME = 'tv.dfb.de'
class DFBIE(InfoExtractor):
IE_NAME = 'tv.dfb.de'
- _VALID_URL = r'https?://tv\.dfb\.de/video/
[^/]+
/(?P<id>\d+)'
+ _VALID_URL = r'https?://tv\.dfb\.de/video/
(?P<display_id>[^/]+)
/(?P<id>\d+)'
_TEST = {
_TEST = {
- 'url': 'http://tv.dfb.de/video/
highlights-des-empfangs-in-berlin/9070
/',
+ 'url': 'http://tv.dfb.de/video/
u-19-em-stimmen-zum-spiel-gegen-russland/11633
/',
# The md5 is different each time
'info_dict': {
# The md5 is different each time
'info_dict': {
- 'id': '9070',
+ 'id': '11633',
+ 'display_id': 'u-19-em-stimmen-zum-spiel-gegen-russland',
'ext': 'flv',
'ext': 'flv',
- 'title': '
Highlights des Empfangs in Berlin
',
- 'upload_date': '201
40716
',
+ 'title': '
U 19-EM: Stimmen zum Spiel gegen Russland
',
+ 'upload_date': '201
50714
',
},
}
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
video_id = mobj.group('id')
},
}
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
video_id = mobj.group('id')
+ display_id = mobj.group('display_id')
- webpage = self._download_webpage(url,
video
_id)
+ webpage = self._download_webpage(url,
display
_id)
player_info = self._download_xml(
'http://tv.dfb.de/server/hd_video.php?play=%s' % video_id,
player_info = self._download_xml(
'http://tv.dfb.de/server/hd_video.php?play=%s' % video_id,
-
video
_id)
+
display
_id)
video_info = player_info.find('video')
video_info = player_info.find('video')
- f4m_info = self._download_xml(self._proto_relative_url(video_info.find('url').text.strip()), video_id)
+ f4m_info = self._download_xml(
+ self._proto_relative_url(video_info.find('url').text.strip()), display_id)
token_el = f4m_info.find('token')
manifest_url = token_el.attrib['url'] + '?' + 'hdnea=' + token_el.attrib['auth'] + '&hdcore=3.2.0'
token_el = f4m_info.find('token')
manifest_url = token_el.attrib['url'] + '?' + 'hdnea=' + token_el.attrib['auth'] + '&hdcore=3.2.0'
+ formats = self._extract_f4m_formats(manifest_url, display_id)
return {
'id': video_id,
return {
'id': video_id,
+ 'display_id': display_id,
'title': video_info.find('title').text,
'title': video_info.find('title').text,
- 'url': manifest_url,
- 'ext': 'flv',
'thumbnail': self._og_search_thumbnail(webpage),
'thumbnail': self._og_search_thumbnail(webpage),
- 'upload_date': ''.join(video_info.find('time_date').text.split('.')[::-1]),
+ 'upload_date': unified_strdate(video_info.find('time_date').text),
+ 'formats': formats,
}
}