Use the 'base_url' for building the resulting 'url' as well.
[youtube-dl] / youtube_dl / extractor / spiegel.py
index 9156d7fafd6ac2688ab329b31f1b683ab868def0..bf5a5e2a42e01ac16443d363c2689f818122a1c0 100644 (file)
@@ -33,15 +33,21 @@ class SpiegelIE(InfoExtractor):
         video_title = self._html_search_regex(
             r'<div class="module-title">(.*?)</div>', webpage, 'title')
 
-        xml_url = 'http://video2.spiegel.de/flash/' + video_id + '.xml'
+        base_url = self._search_regex(
+            r'var\s+server\s+=\s+\"(http://video\d*\.spiegel\.de/flash/\d+/\d+/)\";',
+            webpage,
+            'base_url',
+        )
+
+        xml_url = base_url + video_id + '.xml'
         idoc = self._download_xml(
             xml_url, video_id,
-            note='Downloading XML', errnote='Failed to download XML')
+            note='Downloading XML', errnote='Failed to download XML from "{0}"'.format(xml_url))
 
         formats = [
             {
                 'format_id': n.tag.rpartition('type')[2],
-                'url': 'http://video2.spiegel.de/flash/' + n.find('./filename').text,
+                'url': base_url + n.find('./filename').text,
                 'width': int(n.find('./width').text),
                 'height': int(n.find('./height').text),
                 'abr': int(n.find('./audiobitrate').text),