]>
Raphaël G. Git Repositories - youtubedl/blob - youtube_dl/extractor/gamestar.py
2 from __future__
import unicode_literals
4 from .common
import InfoExtractor
11 class GameStarIE(InfoExtractor
):
12 _VALID_URL
= r
'https?://(?:www\.)?gamestar\.de/videos/.*,(?P<id>[0-9]+)\.html'
14 'url': 'http://www.gamestar.de/videos/trailer,3/hobbit-3-die-schlacht-der-fuenf-heere,76110.html',
15 'md5': '96974ecbb7fd8d0d20fca5a00810cea7',
19 'title': 'Hobbit 3: Die Schlacht der Fünf Heere - Teaser-Trailer zum dritten Teil',
20 'description': 'Der Teaser-Trailer zu Hobbit 3: Die Schlacht der Fünf Heere zeigt einige Szenen aus dem dritten Teil der Saga und kündigt den...',
21 'thumbnail': 're:^https?://.*\.jpg$',
22 'timestamp': 1406542020,
23 'upload_date': '20140728',
28 def _real_extract(self
, url
):
29 video_id
= self
._match
_id
(url
)
30 webpage
= self
._download
_webpage
(url
, video_id
)
32 url
= 'http://gamestar.de/_misc/videos/portal/getVideoUrl.cfm?premium=0&videoId=' + video_id
34 # TODO: there are multiple ld+json objects in the webpage,
35 # while _search_json_ld finds only the first one
36 json_ld
= self
._parse
_json
(self
._search
_regex
(
37 r
'(?s)<script[^>]+type=(["\'])application
/ld\
+json\
1[^
>]*>(?P
<json_ld
>[^
<]+VideoObject
[^
<]+)</script
>',
38 webpage, 'JSON
-LD
', group='json_ld
'), video_id)
39 info_dict = self._json_ld(json_ld, video_id)
40 info_dict['title
'] = remove_end(info_dict['title
'], ' - GameStar
')
42 view_count = json_ld.get('interactionCount
')
43 comment_count = int_or_none(self._html_search_regex(
44 r'([0-9]+) Kommentare
</span
>', webpage, 'comment_count
',
51 'view_count
': view_count,
52 'comment_count
': comment_count