]>
Raphaƫl G. Git Repositories - youtubedl/blob - youtube_dl/extractor/internetvideoarchive.py
1 from __future__
import unicode_literals
3 from .common
import InfoExtractor
15 class InternetVideoArchiveIE(InfoExtractor
):
16 _VALID_URL
= r
'https?://video\.internetvideoarchive\.net/(?:player|flash/players)/.*?\?.*?publishedid.*?'
19 'url': 'http://video.internetvideoarchive.net/player/6/configuration.ashx?customerid=69249&publishedid=194487&reporttag=vdbetatitle&playerid=641&autolist=0&domain=www.videodetective.com&maxrate=high&minrate=low&socialplayer=false',
23 'title': 'KICK-ASS 2',
24 'description': 'md5:c189d5b7280400630a1d3dd17eaa8d8a',
28 'skip_download': True,
33 def _build_json_url(query
):
34 return 'http://video.internetvideoarchive.net/player/6/configuration.ashx?' + query
37 def _build_xml_url(query
):
38 return 'http://video.internetvideoarchive.net/flash/players/flashconfiguration.aspx?' + query
40 def _real_extract(self
, url
):
41 query
= compat_urlparse
.urlparse(url
).query
42 query_dic
= compat_parse_qs(query
)
43 video_id
= query_dic
['publishedid'][0]
46 configuration
= self
._download
_json
(url
, video_id
)
48 # There are multiple videos in the playlist whlie only the first one
49 # matches the video played in browsers
50 video_info
= configuration
['playlist'][0]
53 for source
in video_info
['sources']:
54 file_url
= source
['file']
55 if determine_ext(file_url
) == 'm3u8':
56 formats
.extend(self
._extract
_m
3u8_formats
(
57 file_url
, video_id
, ext
='mp4', m3u8_id
='hls'))
63 if source
.get('label') and source
['label'][-4:] == ' kbs':
64 tbr
= int_or_none(source
['label'][:-4])
67 'format_id': 'http-%d' % tbr
,
69 formats
.append(a_format
)
71 self
._sort
_formats
(formats
)
73 title
= video_info
['title']
74 description
= video_info
.get('description')
75 thumbnail
= video_info
.get('image')
77 configuration
= self
._download
_xml
(url
, video_id
)
79 'url': xpath_text(configuration
, './file', 'file URL', fatal
=True),
81 thumbnail
= xpath_text(configuration
, './image', 'thumbnail')
82 title
= 'InternetVideoArchive video %s' % video_id
89 'thumbnail': thumbnail
,
90 'description': description
,