]>
 
 
Raphaƫl G. Git Repositories - youtubedl/blob - youtube_dl/extractor/ninegag.py 
 
 
 
 
 
 
 
 
2b7236be5c96a4b2e5ae2a6536faa0b9137e2af0
   1  from  __future__ 
import  unicode_literals
 
   6  from  . common 
import  InfoExtractor
 
   9  class  NineGagIE ( InfoExtractor
):  
  11      _VALID_URL 
=  r
'^https?://(?:www\.)?9gag\.tv/v/(?P<id>[0-9]+)'  
  14          "url" :  "http://9gag.tv/v/1912" ,  
  17              "description" :  "This 3-minute video will make you smile and then make you feel untalented and insignificant. Anyway, you should share this awesomeness. (Thanks, Dino!)" ,  
  18              "title" :  " \" People Are Awesome 2013 \"  Is Absolutely Awesome"  
  23      def  _real_extract ( self
,  url
):  
  24          mobj 
=  re
. match ( self
._ VALID
_U RL
,  url
)  
  25          video_id 
=  mobj
. group ( 'id' )  
  27          webpage 
=  self
._ download
_ webpage
( url
,  video_id
)  
  28          data_json 
=  self
._ html
_ search
_ regex
( r
'''(?x)  
  29              <div\s*id="tv-video"\s*data-video-source="youtube"\s*  
  30                  data-video-meta="([^"]+)"''' ,  webpage
,  'video metadata' )  
  32          data 
=  json
. loads ( data_json
)  
  35              '_type' :  'url_transparent' ,  
  36              'url' :  data
[ 'youtubeVideoId' ],  
  39              'title' :  data
[ 'title' ],  
  40              'description' :  data
[ 'description' ],  
  41              'view_count' :  int ( data
[ 'view_count' ]),  
  42              'like_count' :  int ( data
[ 'statistic' ][ 'like' ]),  
  43              'dislike_count' :  int ( data
[ 'statistic' ][ 'dislike' ]),  
  44              'thumbnail' :  data
[ 'thumbnail_url' ],