|
@@ -15,7 +15,9 @@ class NineGagIE(InfoExtractor):
|
|
|
"file": "1912.mp4",
|
|
|
"info_dict": {
|
|
|
"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!)",
|
|
|
- "title": "\"People Are Awesome 2013\" Is Absolutely Awesome"
|
|
|
+ "title": "\"People Are Awesome 2013\" Is Absolutely Awesome",
|
|
|
+ "view_count": int,
|
|
|
+ "thumbnail": "re:^https?://",
|
|
|
},
|
|
|
'add_ie': ['Youtube']
|
|
|
}
|
|
@@ -25,21 +27,27 @@ class NineGagIE(InfoExtractor):
|
|
|
video_id = mobj.group('id')
|
|
|
|
|
|
webpage = self._download_webpage(url, video_id)
|
|
|
- data_json = self._html_search_regex(r'''(?x)
|
|
|
- <div\s*id="tv-video"\s*data-video-source="youtube"\s*
|
|
|
- data-video-meta="([^"]+)"''', webpage, 'video metadata')
|
|
|
|
|
|
- data = json.loads(data_json)
|
|
|
+ youtube_id = self._html_search_regex(
|
|
|
+ r'(?s)id="jsid-video-post-container".*?data-external-id="([^"]+)"',
|
|
|
+ webpage, 'video ID')
|
|
|
+ description = self._html_search_regex(
|
|
|
+ r'(?s)<div class="video-caption">.*?<p>(.*?)</p>', webpage,
|
|
|
+ 'description', fatal=False)
|
|
|
+ view_count_str = self._html_search_regex(
|
|
|
+ r'<p><b>([0-9][0-9,]*)</b> views</p>', webpage, 'view count',
|
|
|
+ fatal=False)
|
|
|
+ view_count = (
|
|
|
+ None if view_count_str is None
|
|
|
+ else int(view_count_str.replace(',', '')))
|
|
|
|
|
|
return {
|
|
|
'_type': 'url_transparent',
|
|
|
- 'url': data['youtubeVideoId'],
|
|
|
+ 'url': youtube_id,
|
|
|
'ie_key': 'Youtube',
|
|
|
'id': video_id,
|
|
|
- 'title': data['title'],
|
|
|
- 'description': data['description'],
|
|
|
- 'view_count': int(data['view_count']),
|
|
|
- 'like_count': int(data['statistic']['like']),
|
|
|
- 'dislike_count': int(data['statistic']['dislike']),
|
|
|
- 'thumbnail': data['thumbnail_url'],
|
|
|
+ 'title': self._og_search_title(webpage),
|
|
|
+ 'description': description,
|
|
|
+ 'view_count': view_count,
|
|
|
+ 'thumbnail': self._og_search_thumbnail(webpage),
|
|
|
}
|