[nonktube] Add extractor (closes #8647, closes #13024)
authorSergey M․ <dstftw@gmail.com>
Mon, 8 May 2017 13:08:58 +0000 (20:08 +0700)
committerSergey M․ <dstftw@gmail.com>
Mon, 8 May 2017 13:10:39 +0000 (20:10 +0700)
youtube_dl/extractor/extractors.py
youtube_dl/extractor/nonktube.py [new file with mode: 0644]

index 1d74959100143f2c597830f23a2ecb3e33d9f60a..968cca9d284eec1bbb58cd66724464e50d69c9cf 100644 (file)
@@ -663,6 +663,7 @@ from .nintendo import NintendoIE
 from .njpwworld import NJPWWorldIE
 from .nobelprize import NobelPrizeIE
 from .noco import NocoIE
+from .nonktube import NonkTubeIE
 from .noovo import NoovoIE
 from .normalboots import NormalbootsIE
 from .nosvideo import NosVideoIE
diff --git a/youtube_dl/extractor/nonktube.py b/youtube_dl/extractor/nonktube.py
new file mode 100644 (file)
index 0000000..ba6007c
--- /dev/null
@@ -0,0 +1,37 @@
+from __future__ import unicode_literals
+
+from .nuevo import NuevoBaseIE
+
+
+class NonkTubeIE(NuevoBaseIE):
+    _VALID_URL = r'https?://(?:www\.)?nonktube\.com/(?:(?:video|embed)/|media/nuevo/embed\.php\?.*?\bid=)(?P<id>\d+)'
+    _TESTS = [{
+        'url': 'https://www.nonktube.com/video/118636/sensual-wife-uncensored-fucked-in-hairy-pussy-and-facialized',
+        'info_dict': {
+            'id': '118636',
+            'ext': 'mp4',
+            'title': 'Sensual Wife Uncensored Fucked In Hairy Pussy And Facialized',
+            'age_limit': 18,
+            'duration': 1150.98,
+        },
+        'params': {
+            'skip_download': True,
+        }
+    }, {
+        'url': 'https://www.nonktube.com/embed/118636',
+        'only_matching': True,
+    }]
+
+    def _real_extract(self, url):
+        video_id = self._match_id(url)
+
+        nuevo_url = 'https://www.nonktube.com/media/nuevo/config.php?key=%s' % video_id
+
+        info = self._extract_nuevo(
+            nuevo_url, video_id, headers={
+                'Referer': 'https://www.nonktube.com/media/nuevo/player.swf?config=%s' % nuevo_url
+            })
+        info.update({
+            'age_limit': 18
+        })
+        return info