]>
Raphaƫl G. Git Repositories - youtubedl/blob - youtube_dl/extractor/eporner.py
e006921ec3f8d2a0aff0e6bb0595148469b1c256
   2 from __future__ 
import unicode_literals
 
   6 from .common 
import InfoExtractor
 
  13 class EpornerIE(InfoExtractor
): 
  14     _VALID_URL 
= r
'https?://(?:www\.)?eporner\.com/hd-porn/(?P<id>\d+)/(?P<display_id>[\w-]+)' 
  16         'url': 'http://www.eporner.com/hd-porn/95008/Infamous-Tiffany-Teen-Strip-Tease-Video/', 
  17         'md5': '39d486f046212d8e1b911c52ab4691f8', 
  20             'display_id': 'Infamous-Tiffany-Teen-Strip-Tease-Video', 
  22             'title': 'Infamous Tiffany Teen Strip Tease Video', 
  29     def _real_extract(self
, url
): 
  30         mobj 
= re
.match(self
._VALID
_URL
, url
) 
  31         video_id 
= mobj
.group('id') 
  32         display_id 
= mobj
.group('display_id') 
  34         webpage 
= self
._download
_webpage
(url
, display_id
) 
  35         title 
= self
._html
_search
_regex
( 
  36             r
'<title>(.*?) - EPORNER', webpage
, 'title') 
  38         redirect_url 
= 'http://www.eporner.com/config5/%s' % video_id
 
  39         player_code 
= self
._download
_webpage
( 
  40             redirect_url
, display_id
, note
='Downloading player config') 
  42         sources 
= self
._search
_regex
( 
  43             r
'(?s)sources\s*:\s*\[\s*({.+?})\s*\]', player_code
, 'sources') 
  46         for video_url
, format_id 
in re
.findall(r
'file\s*:\s*"([^"]+)",\s*label\s*:\s*"([^"]+)"', sources
): 
  49                 'format_id': format_id
, 
  51             m 
= re
.search(r
'^(\d+)', format_id
) 
  53                 fmt
['height'] = int(m
.group(1)) 
  55         self
._sort
_formats
(formats
) 
  57         duration 
= parse_duration(self
._html
_search
_meta
('duration', webpage
)) 
  58         view_count 
= str_to_int(self
._search
_regex
( 
  59             r
'id="cinemaviews">\s*([0-9,]+)\s*<small>views', 
  60             webpage
, 'view count', fatal
=False)) 
  64             'display_id': display_id
, 
  67             'view_count': view_count
,