]>
Raphaƫl G. Git Repositories - youtubedl/blob - youtube_dl/extractor/nba.py
   3 from .common 
import InfoExtractor
 
   9 class NBAIE(InfoExtractor
): 
  10     _VALID_URL 
= r
'^(?:https?://)?(?:watch\.|www\.)?nba\.com/(?:nba/)?video(/[^?]*?)(?:/index\.html)?(?:\?.*)?$' 
  12         u
'url': u
'http://www.nba.com/video/games/nets/2012/12/04/0021200253-okc-bkn-recap.nba/index.html', 
  13         u
'file': u
'0021200253-okc-bkn-recap.nba.mp4', 
  14         u
'md5': u
'c0edcfc37607344e2ff8f13c378c88a4', 
  16             u
"description": u
"Kevin Durant scores 32 points and dishes out six assists as the Thunder beat the Nets in Brooklyn.",  
  17             u
"title": u
"Thunder vs. Nets" 
  21     def _real_extract(self
, url
): 
  22         mobj 
= re
.match(self
._VALID
_URL
, url
) 
  24             raise ExtractorError(u
'Invalid URL: %s' % url
) 
  26         video_id 
= mobj
.group(1) 
  28         webpage 
= self
._download
_webpage
(url
, video_id
) 
  30         video_url 
= u
'http://ht-mobile.cdn.turner.com/nba/big' + video_id 
+ '_nba_1280x720.mp4' 
  32         shortened_video_id 
= video_id
.rpartition('/')[2] 
  33         title 
= self
._og
_search
_title
(webpage
, default
=shortened_video_id
).replace('NBA.com: ', '') 
  35         # It isn't there in the HTML it returns to us 
  36         # uploader_date = self._html_search_regex(r'<b>Date:</b> (.*?)</div>', webpage, 'upload_date', fatal=False) 
  38         description 
= self
._html
_search
_regex
(r
'<meta name="description" (?:content|value)="(.*?)" />', webpage
, 'description', fatal
=False) 
  41             'id': shortened_video_id
, 
  45             # 'uploader_date': uploader_date, 
  46             'description': description
,