diff options
author | Philipp Hagemeister <phihag@phihag.de> | 2013-06-27 18:16:41 +0200 |
---|---|---|
committer | Philipp Hagemeister <phihag@phihag.de> | 2013-06-27 18:16:41 +0200 |
commit | 3a8736bd745ecd7ce5cb605cf56710f76a26d1ab (patch) | |
tree | 38d64cb3a0dff9f56ae110adbc2254639cd7704f /youtube_dl | |
parent | c8c516361819f0e01dbff33a0fcb97e9f0e25386 (diff) | |
parent | e4decf2750ee3b0cfdb6c866a1496d0dd96914fa (diff) |
Merge remote-tracking branch 'gitprojs/master'
Conflicts:
youtube_dl/extractor/__init__.py
Diffstat (limited to 'youtube_dl')
-rw-r--r-- | youtube_dl/extractor/__init__.py | 2 | ||||
-rw-r--r-- | youtube_dl/extractor/auengine.py | 38 |
2 files changed, 40 insertions, 0 deletions
diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py index cc818fcc1..bffb6d115 100644 --- a/youtube_dl/extractor/__init__.py +++ b/youtube_dl/extractor/__init__.py @@ -1,6 +1,7 @@ from .ard import ARDIE from .arte import ArteTvIE +from .auengine import AuengineIE from .bandcamp import BandcampIE from .bliptv import BlipTVIE, BlipTVUserIE from .breakcom import BreakIE @@ -138,6 +139,7 @@ def gen_extractors(): CSpanIE(), WimpIE(), HotNewHipHopIE(), + AuengineIE(), GenericIE() ] diff --git a/youtube_dl/extractor/auengine.py b/youtube_dl/extractor/auengine.py new file mode 100644 index 000000000..94322cf59 --- /dev/null +++ b/youtube_dl/extractor/auengine.py @@ -0,0 +1,38 @@ +import os.path +import re + +from .common import InfoExtractor +from ..utils import ( + compat_urllib_parse, + compat_urllib_parse_urlparse, +) + +class AuengineIE(InfoExtractor): + _VALID_URL = r'(?:http://)?(?:www\.)?auengine\.com/embed.php\?.*?file=([^&]+).*?' + + def _real_extract(self, url): + mobj = re.match(self._VALID_URL, url) + video_id = mobj.group(1) + webpage = self._download_webpage(url, video_id) + title = self._html_search_regex(r'<title>(?P<title>.+?)</title>', + webpage, u'title') + title = title.strip() + links = re.findall(r'[^A-Za-z0-9]?(?:file|url):\s*["\'](http[^\'"&]*)', webpage) + links = [compat_urllib_parse.unquote(l) for l in links] + for link in links: + root, pathext = os.path.splitext(compat_urllib_parse_urlparse(link).path) + if pathext == '.png': + thumbnail = link + elif pathext == '.mp4': + url = link + ext = pathext + if ext == title[-len(ext):]: + title = title[:-len(ext)] + ext = ext[1:] + return [{ + 'id': video_id, + 'url': url, + 'ext': ext, + 'title': title, + 'thumbnail': thumbnail, + }] |