aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/tests.json2
-rwxr-xr-xyoutube_dl/InfoExtractors.py26
2 files changed, 18 insertions, 10 deletions
diff --git a/test/tests.json b/test/tests.json
index c2c6421fd..b112e6318 100644
--- 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
index 4aec8c687..507dfc324 100755
--- 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()
]