1
1
mirror of https://github.com/ytdl-org/youtube-dl synced 2024-11-27 23:56:51 +01:00

[xnxx] Modernize

This commit is contained in:
Jaime Marquínez Ferrándiz 2014-03-09 17:22:53 +01:00
parent 9e55e37a2e
commit bdebf51c8f

View File

@ -1,55 +1,49 @@
# encoding: utf-8
from __future__ import unicode_literals
import re import re
from .common import InfoExtractor from .common import InfoExtractor
from ..utils import ( from ..utils import (
compat_urllib_parse, compat_urllib_parse,
ExtractorError,
) )
class XNXXIE(InfoExtractor): class XNXXIE(InfoExtractor):
_VALID_URL = r'^(?:https?://)?(?:video|www)\.xnxx\.com/video([0-9]+)/(.*)' _VALID_URL = r'^https?://(?:video|www)\.xnxx\.com/video(?P<id>[0-9]+)/(.*)'
VIDEO_URL_RE = r'flv_url=(.*?)&amp;'
VIDEO_TITLE_RE = r'<title>(.*?)\s+-\s+XNXX.COM'
VIDEO_THUMB_RE = r'url_bigthumb=(.*?)&amp;'
_TEST = { _TEST = {
u'url': u'http://video.xnxx.com/video1135332/lida_naked_funny_actress_5_', 'url': 'http://video.xnxx.com/video1135332/lida_naked_funny_actress_5_',
u'file': u'1135332.flv', 'md5': '0831677e2b4761795f68d417e0b7b445',
u'md5': u'0831677e2b4761795f68d417e0b7b445', 'info_dict': {
u'info_dict': { 'id': '1135332',
u"title": u"lida \u00bb Naked Funny Actress (5)", 'ext': 'flv',
u"age_limit": 18, 'title': 'lida » Naked Funny Actress (5)',
'age_limit': 18,
} }
} }
def _real_extract(self, url): def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url) mobj = re.match(self._VALID_URL, url)
if mobj is None: video_id = mobj.group('id')
raise ExtractorError(u'Invalid URL: %s' % url)
video_id = mobj.group(1)
# Get webpage content # Get webpage content
webpage = self._download_webpage(url, video_id) webpage = self._download_webpage(url, video_id)
video_url = self._search_regex(self.VIDEO_URL_RE, video_url = self._search_regex(r'flv_url=(.*?)&amp;',
webpage, u'video URL') webpage, 'video URL')
video_url = compat_urllib_parse.unquote(video_url) video_url = compat_urllib_parse.unquote(video_url)
video_title = self._html_search_regex(self.VIDEO_TITLE_RE, video_title = self._html_search_regex(r'<title>(.*?)\s+-\s+XNXX.COM',
webpage, u'title') webpage, 'title')
video_thumbnail = self._search_regex(self.VIDEO_THUMB_RE, video_thumbnail = self._search_regex(r'url_bigthumb=(.*?)&amp;',
webpage, u'thumbnail', fatal=False) webpage, 'thumbnail', fatal=False)
return [{ return {
'id': video_id, 'id': video_id,
'url': video_url, 'url': video_url,
'uploader': None,
'upload_date': None,
'title': video_title, 'title': video_title,
'ext': 'flv', 'ext': 'flv',
'thumbnail': video_thumbnail, 'thumbnail': video_thumbnail,
'description': None,
'age_limit': 18, 'age_limit': 18,
}] }