]>
jfr.im git - yt-dlp.git/blob - youtube_dl/extractor/gametrailers.py
3 from .mtv
import MTVIE
, _media_xml_tag
5 class GametrailersIE(MTVIE
):
7 Gametrailers use the same videos system as MTVIE, it just changes the feed
8 url, where the uri is and the method to get the thumbnails.
10 _VALID_URL
= r
'http://www\.gametrailers\.com/(?P<type>videos|reviews|full-episodes)/(?P<id>.*?)/(?P<title>.*)'
12 u
'url': u
'http://www.gametrailers.com/videos/zbvr8i/mirror-s-edge-2-e3-2013--debut-trailer',
13 u
'file': u
'70e9a5d7-cf25-4a10-9104-6f3e7342ae0d.mp4',
14 u
'md5': u
'4c8e67681a0ea7ec241e8c09b3ea8cf7',
16 u
'title': u
'E3 2013: Debut Trailer',
17 u
'description': u
'Faith is back! Check out the World Premiere trailer for Mirror\'s Edge 2 straight from the EA Press Conference at E3 2013!',
20 # Overwrite MTVIE properties we don't want
23 _FEED_URL
= 'http://www.gametrailers.com/feeds/mrss'
25 def _get_thumbnail_url(self
, uri
, itemdoc
):
26 search_path
= '%s/%s' % (_media_xml_tag('group'), _media_xml_tag('thumbnail'))
27 return itemdoc
.find(search_path
).attrib
['url']
29 def _real_extract(self
, url
):
30 mobj
= re
.match(self
._VALID
_URL
, url
)
31 video_id
= mobj
.group('id')
32 webpage
= self
._download
_webpage
(url
, video_id
)
33 mgid
= self
._search
_regex
([r
'data-video="(?P<mgid>mgid:.*?)"',
34 r
'data-contentId=\'(?P
<mgid
>mgid
:.*?
)\''],
36 return self._get_videos_info(mgid)