1
0
mirror of https://codeberg.org/polarisfm/youtube-dl synced 2024-11-27 02:44:33 +01:00
youtube-dl/youtube_dl/extractor/slutload.py

49 lines
1.5 KiB
Python
Raw Normal View History

2014-05-13 10:04:29 +02:00
from __future__ import unicode_literals
2017-12-30 19:41:07 +01:00
import re
2014-05-12 10:28:56 +02:00
from .common import InfoExtractor
2014-05-13 10:04:29 +02:00
2014-05-12 10:28:56 +02:00
class SlutloadIE(InfoExtractor):
2014-05-13 10:04:29 +02:00
_VALID_URL = r'^https?://(?:\w+\.)?slutload\.com/video/[^/]+/(?P<id>[^/]+)/?$'
2017-12-30 19:41:07 +01:00
_TESTS = [{
2014-05-13 10:04:29 +02:00
'url': 'http://www.slutload.com/video/virginie-baisee-en-cam/TD73btpBqSxc/',
2016-10-01 13:57:18 +02:00
'md5': '868309628ba00fd488cf516a113fd717',
2014-05-13 10:04:29 +02:00
'info_dict': {
'id': 'TD73btpBqSxc',
'ext': 'mp4',
2016-02-14 10:37:17 +01:00
'title': 'virginie baisee en cam',
'age_limit': 18,
'thumbnail': r're:https?://.*?\.jpg'
2014-05-12 10:28:56 +02:00
}
2017-12-30 19:41:07 +01:00
}, {
# mobile site
'url': 'http://mobile.slutload.com/video/masturbation-solo/fviFLmc6kzJ/',
'only_matching': True,
}]
2014-05-12 10:28:56 +02:00
def _real_extract(self, url):
2016-10-01 13:57:18 +02:00
video_id = self._match_id(url)
2017-12-30 19:41:07 +01:00
desktop_url = re.sub(r'^(https?://)mobile\.', r'\1', url)
webpage = self._download_webpage(desktop_url, video_id)
2014-05-12 10:28:56 +02:00
video_title = self._html_search_regex(r'<h1><strong>([^<]+)</strong>',
2014-11-23 21:39:15 +01:00
webpage, 'title').strip()
2014-05-13 10:04:29 +02:00
video_url = self._html_search_regex(
r'(?s)<div id="vidPlayer"\s+data-url="([^"]+)"',
webpage, 'video URL')
thumbnail = self._html_search_regex(
r'(?s)<div id="vidPlayer"\s+.*?previewer-file="([^"]+)"',
webpage, 'thumbnail', fatal=False)
return {
'id': video_id,
'url': video_url,
'title': video_title,
'thumbnail': thumbnail,
'age_limit': 18
}