Add Jukebox IE
[youtube-dl] / youtube_dl / extractor / mtv.py
index c23033d44ef2e9b5f510958abb0fdfab5706a461..969db71139b1f81d290ad6549ed3b3d8207da0c7 100644 (file)
@@ -15,6 +15,7 @@ from ..utils import (
 
 class MTVIE(InfoExtractor):
     _VALID_URL = r'^(?P<proto>https?://)?(?:www\.)?mtv\.com/videos/[^/]+/(?P<videoid>[0-9]+)/[^/]+$'
+    _WORKING = False
 
     def _real_extract(self, url):
         mobj = re.match(self._VALID_URL, url)
@@ -26,8 +27,16 @@ class MTVIE(InfoExtractor):
 
         webpage = self._download_webpage(url, video_id)
 
-        song_name = self._html_search_regex(r'<meta name="mtv_vt" content="([^"]+)"/>',
-            webpage, u'song name', fatal=False)
+        # Some videos come from Vevo.com
+        m_vevo = re.search(r'isVevoVideo = true;.*?vevoVideoId = "(.*?)";',
+                           webpage, re.DOTALL)
+        if m_vevo:
+            vevo_id = m_vevo.group(1);
+            self.to_screen(u'Vevo video detected: %s' % vevo_id)
+            return self.url_result('vevo:%s' % vevo_id, ie='Vevo')
+
+        #song_name = self._html_search_regex(r'<meta name="mtv_vt" content="([^"]+)"/>',
+        #    webpage, u'song name', fatal=False)
 
         video_title = self._html_search_regex(r'<meta name="mtv_an" content="([^"]+)"/>',
             webpage, u'title')
@@ -47,7 +56,6 @@ class MTVIE(InfoExtractor):
             raise ExtractorError(u'Unable to download video metadata: %s' % compat_str(err))
 
         mdoc = xml.etree.ElementTree.fromstring(metadataXml)
-        print(metadataXml)
         renditions = mdoc.findall('.//rendition')
 
         # For now, always pick the highest quality.
@@ -63,7 +71,6 @@ class MTVIE(InfoExtractor):
         info = {
             'id': video_id,
             'url': video_url,
-            'uploader': performer,
             'upload_date': None,
             'title': video_title,
             'ext': ext,