diff options
Diffstat (limited to 'youtube_dl')
-rw-r--r-- | youtube_dl/extractor/__init__.py | 2 | ||||
-rw-r--r-- | youtube_dl/extractor/wimp.py | 25 |
2 files changed, 27 insertions, 0 deletions
diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py index 0ea990860..82927610a 100644 --- a/youtube_dl/extractor/__init__.py +++ b/youtube_dl/extractor/__init__.py @@ -49,6 +49,7 @@ from .vbox7 import Vbox7IE from .vevo import VevoIE from .vimeo import VimeoIE from .vine import VineIE +from .wimp import WimpIE from .worldstarhiphop import WorldStarHipHopIE from .xhamster import XHamsterIE from .xnxx import XNXXIE @@ -132,6 +133,7 @@ def gen_extractors(): VevoIE(), JukeboxIE(), TudouIE(), + WimpIE(), GenericIE() ] diff --git a/youtube_dl/extractor/wimp.py b/youtube_dl/extractor/wimp.py new file mode 100644 index 000000000..9d52c947e --- /dev/null +++ b/youtube_dl/extractor/wimp.py @@ -0,0 +1,25 @@ +import re +import base64 +from .common import InfoExtractor + + +class WimpIE(InfoExtractor): + _VALID_URL = r'(?:http://)?(?:www\.)?wimp\.com/([^/]+)/' + + 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 = re.search('\<meta name\="description" content="(.+?)" \/\>',webpage).group(1) + thumbnail_url = re.search('\<meta property\=\"og\:image" content\=\"(.+?)\" />',webpage).group(1) + googleString = re.search("googleCode = '(.*?)'", webpage) + googleString = base64.b64decode(googleString.group(1)) + final_url = re.search('","(.*?)"', googleString).group(1) + ext = final_url.split('.')[-1] + return [{ + 'id': video_id, + 'url': final_url, + 'ext': ext, + 'title': title, + 'thumbnail': thumbnail_url, + }] |