1 from .common
import InfoExtractor
2 from ..compat
import compat_str
9 class YourPornIE(InfoExtractor
):
10 _VALID_URL
= r
'https?://(?:www\.)?sxyprn\.com/post/(?P<id>[^/?#&.]+)'
12 'url': 'https://sxyprn.com/post/57ffcb2e1179b.html',
13 'md5': '6f8682b6464033d87acaa7a8ff0c092e',
15 'id': '57ffcb2e1179b',
17 'title': 'md5:c9f43630bd968267672651ba905a7d35',
18 'thumbnail': r
're:^https?://.*\.jpg$',
23 'skip_download': True,
26 'url': 'https://sxyprn.com/post/57ffcb2e1179b.html',
27 'only_matching': True,
30 def _real_extract(self
, url
):
31 video_id
= self
._match
_id
(url
)
33 webpage
= self
._download
_webpage
(url
, video_id
)
35 parts
= self
._parse
_json
(
37 r
'data-vnfo=(["\'])(?P
<data
>{.+?
})\
1', webpage, 'data info
',
39 video_id)[video_id].split('/')
42 for c in parts[6] + parts[7]:
45 parts[5] = compat_str(int(parts[5]) - num)
47 video_url = urljoin(url, '/'.join(parts))
49 title = (self._search_regex(
50 r'<[^
>]+\bclass
=["\']PostEditTA[^>]+>([^<]+)', webpage, 'title',
51 default=None) or self._og_search_description(webpage)).strip()
52 thumbnail = self._og_search_thumbnail(webpage)
53 duration = parse_duration(self._search_regex(
54 r'duration\s*:\s*<[^>]+>([\d:]+)', webpage, 'duration',
61 'thumbnail': thumbnail,