Browse Source

[ruleporn] Add new extractor

Dankryn 9 years ago
parent
commit
1257b049bc
2 changed files with 32 additions and 0 deletions
  1. 1 0
      youtube_dl/extractor/__init__.py
  2. 31 0
      youtube_dl/extractor/ruleporn.py

+ 1 - 0
youtube_dl/extractor/__init__.py

@@ -580,6 +580,7 @@ from .rts import RTSIE
 from .rtve import RTVEALaCartaIE, RTVELiveIE, RTVEInfantilIE
 from .rtve import RTVEALaCartaIE, RTVELiveIE, RTVEInfantilIE
 from .rtvnh import RTVNHIE
 from .rtvnh import RTVNHIE
 from .ruhd import RUHDIE
 from .ruhd import RUHDIE
+from .ruleporn import RulepornIE
 from .rutube import (
 from .rutube import (
     RutubeIE,
     RutubeIE,
     RutubeChannelIE,
     RutubeChannelIE,

+ 31 - 0
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'<h2 title="((?:\w|\s|\d)+)">', 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,
+        }