From 1257b049bcd9857e2993a4366af41219c36baa3e Mon Sep 17 00:00:00 2001 From: Dankryn Date: Mon, 11 Jan 2016 21:17:30 +0100 Subject: [PATCH] [ruleporn] Add new extractor --- youtube_dl/extractor/__init__.py | 1 + youtube_dl/extractor/ruleporn.py | 31 +++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 youtube_dl/extractor/ruleporn.py diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py index 6f2b35cf1..dc8679d46 100644 --- a/youtube_dl/extractor/__init__.py +++ b/youtube_dl/extractor/__init__.py @@ -580,6 +580,7 @@ from .rtve import RTVEALaCartaIE, RTVELiveIE, RTVEInfantilIE from .rtvnh import RTVNHIE from .ruhd import RUHDIE +from .ruleporn import RulepornIE from .rutube import ( RutubeIE, RutubeChannelIE, diff --git a/youtube_dl/extractor/ruleporn.py b/youtube_dl/extractor/ruleporn.py new file mode 100644 index 000000000..9e6a9125a --- /dev/null +++ b/youtube_dl/extractor/ruleporn.py @@ -0,0 +1,31 @@ +# coding: utf-8 +from __future__ import unicode_literals + +from .common import InfoExtractor + + +class RulepornIE(InfoExtractor): + _VALID_URL = r'https?://(?:www\.)?ruleporn\.com/(?:[a-z]+(?:-[a-z]+)+)' + _TEST = { + 'url': 'http://ruleporn.com/brunette-nympho-chick-takes-her-boyfriend-in-every-angle/', + 'md5': '86861ebc624a1097c7c10eaf06d7d505', + 'info_dict': { + 'id': '48212', + 'ext': 'mp4', + 'title': 'Brunette Nympho Chick Takes Her Boyfriend In Every Angle', + } + } + + def _real_extract(self, url): + webpage = self._download_webpage(url, None) + + video_id = self._search_regex(r'http://lovehomeporn.com/embed/([0-9]+)', webpage, 'video_id', fatal=True) + title = self._search_regex(r'

', webpage, 'title', fatal=True) + info_xml = self._download_xml('http://lovehomeporn.com/media/nuevo/econfig.php?key=%s&rp=true' % video_id, video_id) + url = info_xml.find('file').text + + return { + 'id': video_id, + 'title': title, + 'url': url, + }