X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fpornotube.py;h=04bd3d9793c0424c6dded7d727e1f8cac629377c;hb=7fc54e5262966370762ca7f186e9c709990b354d;hp=0adb40db0748c7267365ab34a87faeb4d4d54f61;hpb=1183b85f50478f6e57e51d2af06e0f6730bb6cb1;p=youtube-dl diff --git a/youtube_dl/extractor/pornotube.py b/youtube_dl/extractor/pornotube.py index 0adb40db0..04bd3d979 100644 --- a/youtube_dl/extractor/pornotube.py +++ b/youtube_dl/extractor/pornotube.py @@ -1,3 +1,5 @@ +from __future__ import unicode_literals + import re from .common import InfoExtractor @@ -9,7 +11,18 @@ from ..utils import ( class PornotubeIE(InfoExtractor): - _VALID_URL = r'^(?:https?://)?(?:\w+\.)?pornotube\.com(/c/(?P[0-9]+))?(/m/(?P[0-9]+))(/(?P.+))$' + _VALID_URL = r'https?://(?:\w+\.)?pornotube\.com(/c/(?P<channel>[0-9]+))?(/m/(?P<videoid>[0-9]+))(/(?P<title>.+))$' + _TEST = { + 'url': 'http://pornotube.com/c/173/m/1689755/Marilyn-Monroe-Bathing', + 'md5': '374dd6dcedd24234453b295209aa69b6', + 'info_dict': { + 'id': '1689755', + 'ext': 'flv', + 'upload_date': '20090708', + 'title': 'Marilyn-Monroe-Bathing', + 'age_limit': 18 + } + } def _real_extract(self, url): mobj = re.match(self._VALID_URL, url) @@ -22,20 +35,22 @@ class PornotubeIE(InfoExtractor): # 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 = self._search_regex(VIDEO_URL_RE, webpage, '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] + upload_date = self._html_search_regex(VIDEO_UPLOADED_RE, webpage, 'upload date', fatal=False) + if upload_date: + upload_date = unified_strdate(upload_date) + age_limit = self._rta_search(webpage) + + return { + 'id': video_id, + 'url': video_url, + 'upload_date': upload_date, + 'title': video_title, + 'ext': 'flv', + 'format': 'flv', + 'age_limit': age_limit, + }