]>
Raphaël G. Git Repositories - youtubedl/blob - youtube_dl/extractor/c56.py
   6 from .common 
import InfoExtractor
 
   7 from ..utils 
import determine_ext
 
   9 class C56IE(InfoExtractor
): 
  10     _VALID_URL 
= r
'https?://((www|player)\.)?56\.com/(.+?/)?(v_|(play_album.+-))(?P<textid>.+?)\.(html|swf)' 
  14         u
'url': u
'http://www.56.com/u39/v_OTM0NDA3MTY.html', 
  15         u
'file': u
'93440716.flv', 
  16         u
'md5': u
'e59995ac63d0457783ea05f93f12a866', 
  18             u
'title': u
'网事知多少 第32期:车怒', 
  22     def _real_extract(self
, url
): 
  23         mobj 
= re
.match(self
._VALID
_URL
, url
, flags
=re
.VERBOSE
) 
  24         text_id 
= mobj
.group('textid') 
  25         info_page 
= self
._download
_webpage
('http://vxml.56.com/json/%s/' % text_id
, 
  26                                            text_id
, u
'Downloading video info') 
  27         info 
= json
.loads(info_page
)['info'] 
  28         best_format 
= sorted(info
['rfiles'], key
=lambda f
: int(f
['filesize']))[-1] 
  29         video_url 
= best_format
['url'] 
  31         return {'id': info
['vid'], 
  32                 'title': info
['Subject'], 
  34                 'ext': determine_ext(video_url
), 
  35                 'thumbnail': info
.get('bimg') or info
.get('img'),