Explorar el Código

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 hace 12 años
padre
commit
ecd5fb49c5
Se han modificado 1 ficheros con 33 adiciones y 0 borrados
  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(),