diff options
author | Philipp Hagemeister <phihag@phihag.de> | 2013-06-23 22:13:32 +0200 |
---|---|---|
committer | Philipp Hagemeister <phihag@phihag.de> | 2013-06-23 22:13:32 +0200 |
commit | 1183b85f50478f6e57e51d2af06e0f6730bb6cb1 (patch) | |
tree | bf6404d11c72a7185f5926ff2f748b7164192e76 /youtube_dl/extractor | |
parent | 0143dc029c6cf9fa187960f6bfa9861c171a9f40 (diff) |
[pornotube] move into own file
Diffstat (limited to 'youtube_dl/extractor')
-rw-r--r-- | youtube_dl/extractor/pornotube.py | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/youtube_dl/extractor/pornotube.py b/youtube_dl/extractor/pornotube.py new file mode 100644 index 000000000..0adb40db0 --- /dev/null +++ b/youtube_dl/extractor/pornotube.py @@ -0,0 +1,41 @@ +import re + +from .common import InfoExtractor +from ..utils import ( + compat_urllib_parse, + + unified_strdate, +) + + +class PornotubeIE(InfoExtractor): + _VALID_URL = r'^(?:https?://)?(?:\w+\.)?pornotube\.com(/c/(?P<channel>[0-9]+))?(/m/(?P<videoid>[0-9]+))(/(?P<title>.+))$' + + def _real_extract(self, url): + mobj = re.match(self._VALID_URL, url) + + video_id = mobj.group('videoid') + video_title = mobj.group('title') + + # Get webpage content + webpage = self._download_webpage(url, video_id) + + # Get the video URL + VIDEO_URL_RE = r'url: "(?P<url>http://video[0-9].pornotube.com/.+\.flv)",' + video_url = self._search_regex(VIDEO_URL_RE, webpage, u'video url') + video_url = compat_urllib_parse.unquote(video_url) + + #Get the uploaded date + VIDEO_UPLOADED_RE = r'<div class="video_added_by">Added (?P<date>[0-9\/]+) by' + upload_date = self._html_search_regex(VIDEO_UPLOADED_RE, webpage, u'upload date', fatal=False) + if upload_date: upload_date = unified_strdate(upload_date) + + info = {'id': video_id, + 'url': video_url, + 'uploader': None, + 'upload_date': upload_date, + 'title': video_title, + 'ext': 'flv', + 'format': 'flv'} + + return [info] |