]>
Raphaƫl G. Git Repositories - youtubedl/blob - youtube_dl/extractor/cnet.py
2 from __future__
import unicode_literals
6 from . common
import InfoExtractor
12 class CNETIE ( InfoExtractor
):
13 _VALID_URL
= r
'https?://(?:www\.)?cnet\.com/videos/(?P<id>[^/]+)/'
15 'url' : 'http://www.cnet.com/videos/hands-on-with-microsofts-windows-8-1-update/' ,
17 'id' : '56f4ea68-bd21-4852-b08c-4de5b8354c60' ,
19 'title' : 'Hands-on with Microsoft Windows 8.1 Update' ,
20 'description' : 'The new update to the Windows 8 OS brings improved performance for mouse and keyboard users.' ,
21 'thumbnail' : 're:^http://.*/flmswindows8.jpg$' ,
22 'uploader_id' : '6085384d-619e-11e3-b231-14feb5ca9861' ,
23 'uploader' : 'Sarah Mitroff' ,
26 'skip_download' : 'requires rtmpdump' ,
29 'url' : 'http://www.cnet.com/videos/whiny-pothole-tweets-at-local-government-when-hit-by-cars-tomorrow-daily-187/' ,
31 'id' : '56527b93-d25d-44e3-b738-f989ce2e49ba' ,
33 'description' : 'Khail and Ashley wonder what other civic woes can be solved by self-tweeting objects, investigate a new kind of VR camera and watch an origami robot self-assemble, walk, climb, dig and dissolve. #TDPothole' ,
34 'uploader_id' : 'b163284d-6b73-44fc-b3e6-3da66c392d40' ,
35 'uploader' : 'Ashley Esqueda' ,
36 'title' : 'Whiny potholes tweet at local government when hit by cars (Tomorrow Daily 187)' ,
39 'skip_download' : True , # requires rtmpdump
43 def _real_extract ( self
, url
):
44 display_id
= self
._ match
_ id
( url
)
45 webpage
= self
._ download
_ webpage
( url
, display_id
)
47 data_json
= self
._ html
_ search
_ regex
(
48 r
"<div class=\" cnetVideoPlayer
\" \s
+.* ?data
- cnet
- video
- options
= '([^' ]+) '",
50 data = json.loads(data_json)
53 vdata = data[' videos
'][0]
55 raise ExtractorError(' Cannot find video data
')
57 mpx_account = data[' config
'][' players
'][' default
'][' mpx_account
']
58 vid = vdata[' files
'].get(' rtmp
', vdata[' files
'][' hds
'])
59 tp_link = ' http
:// link
. theplatform
. com
/ s
/ %s/ %s ' % (mpx_account, vid)
61 video_id = vdata[' id ']
62 title = vdata.get(' headline
')
64 title = vdata.get(' title
')
66 raise ExtractorError(' Cannot find title
! ')
67 thumbnail = vdata.get(' image
', {}).get(' path
')
68 author = vdata.get(' author
')
70 uploader = ' %s %s ' % (author[' firstName
'], author[' lastName
'])
71 uploader_id = author.get(' id ')
77 ' _type
': ' url_transparent
',
80 ' display_id
': display_id,
83 ' uploader_id
': uploader_id,
84 ' thumbnail
': thumbnail,