]>
Commit | Line | Data |
---|---|---|
3898c8a7 | 1 | from __future__ import unicode_literals |
2 | ||
3898c8a7 | 3 | from .common import InfoExtractor |
3deed1e9 | 4 | from ..utils import ExtractorError |
3898c8a7 | 5 | |
6 | ||
7 | class FreeVideoIE(InfoExtractor): | |
3deed1e9 | 8 | _VALID_URL = r'^http://www.freevideo.cz/vase-videa/(?P<id>[^.]+)\.html(?:$|[?#])' |
3898c8a7 | 9 | |
10 | _TEST = { | |
11 | 'url': 'http://www.freevideo.cz/vase-videa/vysukany-zadecek-22033.html', | |
3898c8a7 | 12 | 'info_dict': { |
3deed1e9 PH |
13 | 'id': 'vysukany-zadecek-22033', |
14 | 'ext': 'mp4', | |
3898c8a7 | 15 | "title": "vysukany-zadecek-22033", |
16 | "age_limit": 18, | |
3deed1e9 PH |
17 | }, |
18 | 'skip': 'Blocked outside .cz', | |
3898c8a7 | 19 | } |
20 | ||
21 | def _real_extract(self, url): | |
3deed1e9 PH |
22 | video_id = self._match_id(url) |
23 | webpage, handle = self._download_webpage_handle(url, video_id) | |
24 | if '//www.czechav.com/' in handle.geturl(): | |
25 | raise ExtractorError( | |
26 | 'Access to freevideo is blocked from your location', | |
27 | expected=True) | |
3898c8a7 | 28 | |
3deed1e9 PH |
29 | video_url = self._search_regex( |
30 | r'\s+url: "(http://[a-z0-9-]+.cdn.freevideo.cz/stream/.*?/video.mp4)"', | |
31 | webpage, 'video URL') | |
3898c8a7 | 32 | |
33 | return { | |
34 | 'id': video_id, | |
3deed1e9 | 35 | 'url': video_url, |
3898c8a7 | 36 | 'title': video_id, |
3deed1e9 | 37 | 'age_limit': 18, |
3898c8a7 | 38 | } |