diff options
Diffstat (limited to 'youtube_dl')
-rw-r--r-- | youtube_dl/extractor/dump.py | 33 |
1 files changed, 12 insertions, 21 deletions
diff --git a/youtube_dl/extractor/dump.py b/youtube_dl/extractor/dump.py index 4b756b20a..6b651778a 100644 --- a/youtube_dl/extractor/dump.py +++ b/youtube_dl/extractor/dump.py @@ -4,19 +4,19 @@ from __future__ import unicode_literals import re from .common import InfoExtractor -from ..utils import ( - ExtractorError, -) + class DumpIE(InfoExtractor): _VALID_URL = r'^https?://(?:www\.)?dump\.com/(?P<id>[a-zA-Z0-9]+)/' _TEST = { - u'url': u'http://www.dump.com/oneus/', - u'file': u'oneus.flv', - u'md5': u'ad71704d1e67dfd9e81e3e8b42d69d99', - u'info_dict': { - u"title": u"He's one of us.", + 'url': 'http://www.dump.com/oneus/', + 'md5': 'ad71704d1e67dfd9e81e3e8b42d69d99', + 'info_dict': { + 'id': 'oneus', + 'ext': 'flv', + 'title': "He's one of us.", + 'thumbnail': 're:^https?://.*\.jpg$', }, } @@ -24,25 +24,16 @@ class DumpIE(InfoExtractor): m = re.match(self._VALID_URL, url) video_id = m.group('id') - # Note: There is an easier-to-parse configuration at - # http://www.aparat.com/video/video/config/videohash/%video_id - # but the URL in there does not work - webpage = self._download_webpage(url, video_id) + video_url = self._search_regex( + r's1.addVariable\("file",\s*"([^"]+)"', webpage, 'video URL') - try: - video_url = re.findall(r'file","(.+?.flv)"', webpage)[-1] - except IndexError: - raise ExtractorError(u'No video URL found') - - thumb = re.findall('<meta property="og:image" content="(.+?)"',webpage)[0] - - title = self._search_regex(r'<b>([^"]+)</b>', webpage, u'title') + thumb = self._og_search_thumbnail(webpage) + title = self._search_regex(r'<b>([^"]+)</b>', webpage, 'title') return { 'id': video_id, 'title': title, 'url': video_url, - 'ext': 'flv', 'thumbnail': thumb, } |