]>
Raphaël G. Git Repositories - youtubedl/blob - youtube_dl/extractor/aftonbladet.py
2 from __future__
import unicode_literals
4 from .common
import InfoExtractor
7 class AftonbladetIE(InfoExtractor
):
8 _VALID_URL
= r
'^http://tv\.aftonbladet\.se/webbtv.+?(?P<video_id>article[0-9]+)\.ab(?:$|[?#])'
10 'url': 'http://tv.aftonbladet.se/webbtv/nyheter/vetenskap/rymden/article36015.ab',
14 'title': 'Vulkanutbrott i rymden - nu släpper NASA bilderna',
15 'description': 'Jupiters måne mest aktiv av alla himlakroppar',
16 'timestamp': 1394142732,
17 'upload_date': '20140306',
21 def _real_extract(self
, url
):
22 video_id
= self
._match
_id
(url
)
23 webpage
= self
._download
_webpage
(url
, video_id
)
25 # find internal video meta data
26 meta_url
= 'http://aftonbladet-play.drlib.aptoma.no/video/%s.json'
27 internal_meta_id
= self
._html
_search
_regex
(
28 r
'data-aptomaId="([\w\d]+)"', webpage
, 'internal_meta_id')
29 internal_meta_url
= meta_url
% internal_meta_id
30 internal_meta_json
= self
._download
_json
(
31 internal_meta_url
, video_id
, 'Downloading video meta data')
33 # find internal video formats
34 format_url
= 'http://aftonbladet-play.videodata.drvideo.aptoma.no/actions/video/?id=%s'
35 internal_video_id
= internal_meta_json
['videoId']
36 internal_formats_url
= format_url
% internal_video_id
37 internal_formats_json
= self
._download
_json
(
38 internal_formats_url
, video_id
, 'Downloading video formats')
41 for fmt
in internal_formats_json
['formats']['http']['pseudostreaming']['mp4']:
44 'url': 'http://%s:%d/%s/%s' % (p
['address'], p
['port'], p
['path'], p
['filename']),
46 'width': fmt
['width'],
47 'height': fmt
['height'],
48 'tbr': fmt
['bitrate'],
51 self
._sort
_formats
(formats
)
55 'title': internal_meta_json
['title'],
57 'thumbnail': internal_meta_json
['imageUrl'],
58 'description': internal_meta_json
['shortPreamble'],
59 'timestamp': internal_meta_json
['timePublished'],
60 'duration': internal_meta_json
['duration'],
61 'view_count': internal_meta_json
['views'],