]>
Raphaƫl G. Git Repositories - youtubedl/blob - youtube_dl/extractor/spiegel.py
98a65b78bab945b999a1edae2ca088771622e125
2 import xml
.etree
.ElementTree
4 from .common
import InfoExtractor
7 class SpiegelIE(InfoExtractor
):
8 _VALID_URL
= r
'https?://(?:www\.)?spiegel\.de/video/[^/]*-(?P<videoID>[0-9]+)(?:\.html)?(?:#.*)?$'
10 def _real_extract(self
, url
):
11 m
= re
.match(self
._VALID
_URL
, url
)
12 video_id
= m
.group('videoID')
14 webpage
= self
._download
_webpage
(url
, video_id
)
16 video_title
= self
._html
_search
_regex
(r
'<div class="module-title">(.*?)</div>',
19 xml_url
= u
'http://video2.spiegel.de/flash/' + video_id
+ u
'.xml'
20 xml_code
= self
._download
_webpage
(xml_url
, video_id
,
21 note
=u
'Downloading XML', errnote
=u
'Failed to download XML')
23 idoc
= xml
.etree
.ElementTree
.fromstring(xml_code
)
25 filename
= last_type
.findall('./filename')[0].text
26 duration
= float(last_type
.findall('./duration')[0].text
)
28 video_url
= 'http://video2.spiegel.de/flash/' + filename
29 video_ext
= filename
.rpartition('.')[2]