Improve Statigr.am IE

This commit is contained in:
Philipp Hagemeister 2013-06-23 18:58:53 +02:00
parent 63ef586b05
commit 6b3f5a329b
2 changed files with 18 additions and 10 deletions

View File

@ -632,7 +632,7 @@
"skip": "Requires rtmpdump" "skip": "Requires rtmpdump"
}, },
{ {
"name": "Statigr", "name": "Statigram",
"url": "http://statigr.am/p/484091715184808010_284179915", "url": "http://statigr.am/p/484091715184808010_284179915",
"file": "484091715184808010_284179915.mp4", "file": "484091715184808010_284179915.mp4",
"md5": "deda4ff333abe2e118740321e992605b", "md5": "deda4ff333abe2e118740321e992605b",

View File

@ -4552,20 +4552,28 @@ def _real_extract(self, url):
'description': video_description, 'description': video_description,
} }
class StatigrIE(InfoExtractor): class StatigramIE(InfoExtractor):
_VALID_URL = r'(?:http://)?(?:www\.)?statigr\.am/p/([^/]+)' _VALID_URL = r'(?:http://)?(?:www\.)?statigr\.am/p/([^/]+)'
def _real_extract(self, url): def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url) mobj = re.match(self._VALID_URL, url)
if mobj is None:
raise ExtractorError(u'Invalid URL: %s' % url)
video_id = mobj.group(1) video_id = mobj.group(1)
webpage = self._download_webpage(url, video_id) webpage = self._download_webpage(url, video_id)
video_url = re.search(r'<meta property="og:video:secure_url" content="(.+?)">',webpage).group(1) video_url = self._html_search_regex(
thumbnail_url = re.search(r'<meta property="og:image" content="(.+?)" />',webpage).group(1) r'<meta property="og:video:secure_url" content="(.+?)">',
title = (re.search(r'<title>(.+?)</title>',webpage).group(1)).strip("| Statigram") webpage, u'video URL')
uploader = re.search(r'@(.+) \(Videos\)',title).group(1) thumbnail_url = self._html_search_regex(
ext = "mp4" r'<meta property="og:image" content="(.+?)" />',
webpage, u'thumbnail URL', fatal=False)
html_title = self._html_search_regex(
r'<title>(.+?)</title>',
webpage, u'title')
title = html_title.rpartition(u' | Statigram')[0]
uploader = self._html_search_regex(
r'@(.+) \(Videos\)', title, u'uploader name', fatal=False)
ext = 'mp4'
return [{ return [{
'id': video_id, 'id': video_id,
'url': video_url, 'url': video_url,
@ -4641,7 +4649,7 @@ def gen_extractors():
HypemIE(), HypemIE(),
Vbox7IE(), Vbox7IE(),
GametrailersIE(), GametrailersIE(),
StatigrIE(), StatigramIE(),
GenericIE() GenericIE()
] ]