From 2ce4922315d77b13c65a6e31683392f4e6d12e02 Mon Sep 17 00:00:00 2001 From: Tobias Bengfort Date: Tue, 8 Jul 2014 09:37:49 +0200 Subject: [PATCH] add daclips extractor --- youtube_dl/extractor/__init__.py | 1 + youtube_dl/extractor/daclips.py | 21 +++++++++++++++++++++ youtube_dl/extractor/gorillavid.py | 6 ++++-- 3 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 youtube_dl/extractor/daclips.py diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py index 12cca5c2e..f3cdd10c7 100644 --- a/youtube_dl/extractor/__init__.py +++ b/youtube_dl/extractor/__init__.py @@ -56,6 +56,7 @@ from .criterion import CriterionIE from .crunchyroll import CrunchyrollIE from .cspan import CSpanIE from .d8 import D8IE +from .daclips import DaclipsIE from .dailymotion import ( DailymotionIE, DailymotionPlaylistIE, diff --git a/youtube_dl/extractor/daclips.py b/youtube_dl/extractor/daclips.py new file mode 100644 index 000000000..7c5e0df93 --- /dev/null +++ b/youtube_dl/extractor/daclips.py @@ -0,0 +1,21 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +import re + +from gorillavid import GorillaVidIE + + +class DaclipsIE(GorillaVidIE): + _HOST = 'daclips.in' + _VALID_URL = GorillaVidIE._VALID_URL_TEMPLATE % {'host': re.escape(_HOST)} + + _TESTS = [{ + 'url': 'http://daclips.in/3rso4kdn6f9m', + 'info_dict': { + 'id': '3rso4kdn6f9m', + 'ext': 'mp4', + 'title': 'Micro Pig piglets ready on 16th July 2009', + 'thumbnail': 're:http://.*\.jpg', + }, + }] diff --git a/youtube_dl/extractor/gorillavid.py b/youtube_dl/extractor/gorillavid.py index aa15cafc3..937efc577 100644 --- a/youtube_dl/extractor/gorillavid.py +++ b/youtube_dl/extractor/gorillavid.py @@ -12,7 +12,9 @@ from ..utils import ( class GorillaVidIE(InfoExtractor): - _VALID_URL = r'https?://(?:www\.)?gorillavid\.in/(?:embed-)?(?P[0-9a-zA-Z]+)(?:-[0-9]+x[0-9]+\.html)?' + _HOST = 'gorollavid.id' + _VALID_URL_TEMPLATE = r'https?://(?:www\.)?%(host)s/(?:embed-)?(?P[0-9a-zA-Z]+)(?:-[0-9]+x[0-9]+\.html)?' + _VALID_URL = _VALID_URL_TEMPLATE % {'host': re.escape(_HOST)} _TESTS = [{ 'url': 'http://gorillavid.in/06y9juieqpmi', @@ -38,7 +40,7 @@ class GorillaVidIE(InfoExtractor): mobj = re.match(self._VALID_URL, url) video_id = mobj.group('id') - url = 'http://gorillavid.in/%s' % video_id + url = 'http://%s/%s' % (self._HOST, video_id) webpage = self._download_webpage(url, video_id)