aboutsummaryrefslogtreecommitdiffstats
path: root/hypervideo_dl/extractor/peekvids.py
diff options
context:
space:
mode:
Diffstat (limited to 'hypervideo_dl/extractor/peekvids.py')
-rw-r--r--hypervideo_dl/extractor/peekvids.py81
1 files changed, 81 insertions, 0 deletions
diff --git a/hypervideo_dl/extractor/peekvids.py b/hypervideo_dl/extractor/peekvids.py
new file mode 100644
index 0000000..4bf6855
--- /dev/null
+++ b/hypervideo_dl/extractor/peekvids.py
@@ -0,0 +1,81 @@
+# coding: utf-8
+from __future__ import unicode_literals
+
+from .common import InfoExtractor
+
+
+class PeekVidsIE(InfoExtractor):
+ _VALID_URL = r'''(?x)
+ https?://(?:www\.)?peekvids\.com/
+ (?:(?:[^/?#]+/){2}|embed/?\?(?:[^#]*&)?v=)
+ (?P<id>[^/?&#]*)
+ '''
+ _TESTS = [{
+ 'url': 'https://peekvids.com/pc/dane-jones-cute-redhead-with-perfect-tits-with-mini-vamp/BSyLMbN0YCd',
+ 'md5': 'a00940646c428e232407e3e62f0e8ef5',
+ 'info_dict': {
+ 'id': 'BSyLMbN0YCd',
+ 'title': ' Dane Jones - Cute redhead with perfect tits with Mini Vamp, SEXYhub',
+ 'ext': 'mp4',
+ 'thumbnail': r're:^https?://.*\.jpg$',
+ 'description': 'Watch Dane Jones - Cute redhead with perfect tits with Mini Vamp (7 min), uploaded by SEXYhub.com',
+ 'timestamp': 1642579329,
+ 'upload_date': '20220119',
+ 'duration': 416,
+ 'view_count': int,
+ 'age_limit': 18,
+ },
+ }]
+ _DOMAIN = 'www.peekvids.com'
+
+ def _real_extract(self, url):
+ video_id = self._match_id(url)
+ webpage = self._download_webpage(url, video_id)
+
+ short_video_id = self._html_search_regex(r'<video [^>]*data-id="(.+?)"', webpage, 'short video ID')
+ srcs = self._download_json(
+ f'https://{self._DOMAIN}/v-alt/{short_video_id}', video_id,
+ note='Downloading list of source files')
+ formats = [{
+ 'url': url,
+ 'ext': 'mp4',
+ 'format_id': name[8:],
+ } for name, url in srcs.items() if len(name) > 8 and name.startswith('data-src')]
+ if not formats:
+ formats = [{'url': url} for url in srcs.values()]
+ self._sort_formats(formats)
+
+ info = self._search_json_ld(webpage, video_id, expected_type='VideoObject')
+ info.update({
+ 'id': video_id,
+ 'age_limit': 18,
+ 'formats': formats,
+ })
+ return info
+
+
+class PlayVidsIE(PeekVidsIE):
+ _VALID_URL = r'https?://(?:www\.)?playvids\.com/(?:embed/|[^/]{2}/)?(?P<id>[^/?#]*)'
+ _TESTS = [{
+ 'url': 'https://www.playvids.com/U3pBrYhsjXM/pc/dane-jones-cute-redhead-with-perfect-tits-with-mini-vamp',
+ 'md5': 'cd7dfd8a2e815a45402369c76e3c1825',
+ 'info_dict': {
+ 'id': 'U3pBrYhsjXM',
+ 'title': ' Dane Jones - Cute redhead with perfect tits with Mini Vamp, SEXYhub',
+ 'ext': 'mp4',
+ 'thumbnail': r're:^https?://.*\.jpg$',
+ 'description': 'Watch Dane Jones - Cute redhead with perfect tits with Mini Vamp video in HD, uploaded by SEXYhub.com',
+ 'timestamp': 1640435839,
+ 'upload_date': '20211225',
+ 'duration': 416,
+ 'view_count': int,
+ 'age_limit': 18,
+ },
+ }, {
+ 'url': 'https://www.playvids.com/es/U3pBrYhsjXM/pc/dane-jones-cute-redhead-with-perfect-tits-with-mini-vamp',
+ 'only_matching': True,
+ }, {
+ 'url': 'https://www.playvids.com/embed/U3pBrYhsjXM',
+ 'only_matching': True,
+ }]
+ _DOMAIN = 'www.playvids.com'