youtube-dl

Another place where youtube-dl lives on
git clone git://git.oshgnacknak.de/youtube-dl.git
Log | Files | Refs | README | LICENSE

commit 6b3f5a329bc1d1f91655d37222253de2d71fad96
parent 63ef586b056b8b50b7711c122f52ee472540a254
Author: Philipp Hagemeister <phihag@phihag.de>
Date:   Sun, 23 Jun 2013 18:58:53 +0200

Improve Statigr.am IE

Diffstat:
Mtest/tests.json | 2+-
Myoutube_dl/InfoExtractors.py | 26+++++++++++++++++---------
2 files changed, 18 insertions(+), 10 deletions(-)

diff --git a/test/tests.json b/test/tests.json @@ -632,7 +632,7 @@ "skip": "Requires rtmpdump" }, { - "name": "Statigr", + "name": "Statigram", "url": "http://statigr.am/p/484091715184808010_284179915", "file": "484091715184808010_284179915.mp4", "md5": "deda4ff333abe2e118740321e992605b", diff --git a/youtube_dl/InfoExtractors.py b/youtube_dl/InfoExtractors.py @@ -4552,20 +4552,28 @@ class GametrailersIE(InfoExtractor): 'description': video_description, } -class StatigrIE(InfoExtractor): +class StatigramIE(InfoExtractor): _VALID_URL = r'(?:http://)?(?:www\.)?statigr\.am/p/([^/]+)' def _real_extract(self, url): mobj = re.match(self._VALID_URL, url) - if mobj is None: - raise ExtractorError(u'Invalid URL: %s' % url) + video_id = mobj.group(1) webpage = self._download_webpage(url, video_id) - video_url = re.search(r'<meta property="og:video:secure_url" content="(.+?)">',webpage).group(1) - thumbnail_url = re.search(r'<meta property="og:image" content="(.+?)" />',webpage).group(1) - title = (re.search(r'<title>(.+?)</title>',webpage).group(1)).strip("| Statigram") - uploader = re.search(r'@(.+) \(Videos\)',title).group(1) - ext = "mp4" + video_url = self._html_search_regex( + r'<meta property="og:video:secure_url" content="(.+?)">', + webpage, u'video URL') + thumbnail_url = self._html_search_regex( + 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 [{ 'id': video_id, 'url': video_url, @@ -4641,7 +4649,7 @@ def gen_extractors(): HypemIE(), Vbox7IE(), GametrailersIE(), - StatigrIE(), + StatigramIE(), GenericIE() ]