Browse Source

added redtube.com in InfoExtractors (2nd pull request with the required amindments)

added redtube.com in InfoExtractors (2nd pull request with the required amindments). Now this script can also download redtube.com videos
M.Yasoob Ullah Khalid 12 năm trước cách đây
mục cha
commit
ecd5fb49c5
1 tập tin đã thay đổi với 33 bổ sung0 xóa
  1. 33 0
      youtube_dl/InfoExtractors.py

+ 33 - 0
youtube_dl/InfoExtractors.py

@@ -779,6 +779,38 @@ class MetacafeIE(InfoExtractor):
             'ext':      video_extension.decode('utf-8'),
         }]
 
+class RedtubeIE(InfoExtractor):
+    """Information Extractor for redtube"""
+    _VALID_URL = r'(?:http://)?(?:www\.)?redtube\.com/(?P<id>[0-9]+)'
+    IE_NAME = u'redtube'
+
+    def _real_extract(self,url):
+        mobj = re.match(self._VALID_URL, url)
+        if mobj is None:
+            self._downloader.report_error(u'invalid URL: %s' % url)
+            return
+        video_id = mobj.group('id')
+        video_extension = 'mp4'        
+        webpage = self._download_webpage(url, video_id)
+        self.report_extraction(video_id)
+        mobj = re.search(r'<source src="'+'(.+)'+'" type="video/mp4">',webpage)
+        if mobj is not None:
+            video_url = mobj.group(1)
+        else:
+            self._downloader.report_error(u'unable to extract media URL')
+            return
+        mobj = re.search('<h1 class="videoTitle slidePanelMovable">'+r'(.+)'+r'</h1>',webpage)
+        if mobj is not None:
+            video_title = mobj.group(1)
+        else:
+            video_title = 'Redtube - %s' % time.ctime()
+
+        return [{
+            'id':       video_id,
+            'url':      video_url,
+            'ext':      video_extension,
+            'title':    video_title,
+        }]
 
 class DailymotionIE(InfoExtractor):
     """Information Extractor for Dailymotion"""
@@ -4236,6 +4268,7 @@ def gen_extractors():
         TEDIE(),
         MySpassIE(),
         SpiegelIE(),
+        RedtubeIE(),
         LiveLeakIE(),
         ARDIE(),
         TumblrIE(),