]>
Raphaël G. Git Repositories - youtubedl/blob - youtube_dl/extractor/vidzi.py
ac35d55a9505808144fed105d535d53779afb1cb
   2 from __future__ 
import unicode_literals
 
   6 from .common 
import InfoExtractor
 
  15 class VidziIE(InfoExtractor
): 
  16     _VALID_URL 
= r
'https?://(?:www\.)?vidzi\.(?:tv|cc)/(?:embed-)?(?P<id>[0-9a-zA-Z]+)' 
  18         'url': 'http://vidzi.tv/cghql9yq6emu.html', 
  19         'md5': '4f16c71ca0c8c8635ab6932b5f3f1660', 
  23             'title': 'youtube-dl test video  1\\\\2\'3/4<5\\\\6ä7↭', 
  27             'skip_download': True, 
  30         'url': 'http://vidzi.tv/embed-4z2yb0rzphe9-600x338.html', 
  31         'only_matching': True, 
  33         'url': 'http://vidzi.cc/cghql9yq6emu.html', 
  34         'only_matching': True, 
  37     def _real_extract(self
, url
): 
  38         video_id 
= self
._match
_id
(url
) 
  40         webpage 
= self
._download
_webpage
( 
  41             'http://vidzi.tv/%s' % video_id
, video_id
) 
  42         title 
= self
._html
_search
_regex
( 
  43             r
'(?s)<h2 class="video-title">(.*?)</h2>', webpage
, 'title') 
  47             decode_packed_codes(mobj
.group(0)).replace('\\\'', '\'') 
  48             for mobj 
in re
.finditer(PACKED_CODES_RE
, webpage
)]) 
  49         for num
, code 
in enumerate(codes
, 1): 
  50             jwplayer_data 
= self
._parse
_json
( 
  52                     r
'setup\(([^)]+)\)', code
, 'jwplayer data', 
  53                     default
=NO_DEFAULT 
if num 
== len(codes
) else '{}'), 
  54                 video_id
, transform_source
=js_to_json
) 
  58         info_dict 
= self
._parse
_jwplayer
_data
(jwplayer_data
, video_id
, require_title
=False) 
  59         info_dict
['title'] = title