X-Git-Url: https://git.rapsys.eu/youtubedl/blobdiff_plain/9815bb0a551468e4939cacfffbc2d5cb8dd12431..a497d0e55172891fd4925626374a7afdd811e00f:/youtube_dl/extractor/statigram.py diff --git a/youtube_dl/extractor/statigram.py b/youtube_dl/extractor/statigram.py index 95d2ee3..d602e81 100644 --- a/youtube_dl/extractor/statigram.py +++ b/youtube_dl/extractor/statigram.py @@ -1,33 +1,38 @@ +from __future__ import unicode_literals + import re from .common import InfoExtractor + class StatigramIE(InfoExtractor): - _VALID_URL = r'(?:http://)?(?:www\.)?statigr\.am/p/([^/]+)' + _VALID_URL = r'https?://(www\.)?statigr\.am/p/(?P[^/]+)' + _TEST = { + 'url': 'http://statigr.am/p/522207370455279102_24101272', + 'md5': '6eb93b882a3ded7c378ee1d6884b1814', + 'info_dict': { + 'id': '522207370455279102_24101272', + 'ext': 'mp4', + 'uploader_id': 'aguynamedpatrick', + 'title': 'Instagram photo by @aguynamedpatrick (Patrick Janelle)', + }, + } def _real_extract(self, url): mobj = re.match(self._VALID_URL, url) - video_id = mobj.group(1) + video_id = mobj.group('id') webpage = self._download_webpage(url, video_id) - video_url = self._html_search_regex( - r'', - webpage, u'video URL') - thumbnail_url = self._html_search_regex( - r'', - webpage, u'thumbnail URL', fatal=False) html_title = self._html_search_regex( r'(.+?)', - webpage, u'title') - title = html_title.rpartition(u' | Statigram')[0] + webpage, 'title') + title = re.sub(r'(?: *\(Videos?\))? \| Statigram$', '', html_title) uploader_id = self._html_search_regex( - r'@([^ ]+)', title, u'uploader name', fatal=False) - ext = 'mp4' + r'@([^ ]+)', title, 'uploader name', fatal=False) - return [{ - 'id': video_id, - 'url': video_url, - 'ext': ext, - 'title': title, - 'thumbnail': thumbnail_url, - 'uploader_id' : uploader_id - }] + return { + 'id': video_id, + 'url': self._og_search_video_url(webpage), + 'title': title, + 'thumbnail': self._og_search_thumbnail(webpage), + 'uploader_id': uploader_id + }