Răsfoiți Sursa

[f4m] Download only the first fragment with the `--test` option

Jaime Marquínez Ferrándiz 11 ani în urmă
părinte
comite
1824b48169
2 a modificat fișierele cu 11 adăugiri și 5 ștergeri
  1. 10 1
      youtube_dl/downloader/f4m.py
  2. 1 4
      youtube_dl/extractor/syfy.py

+ 10 - 1
youtube_dl/downloader/f4m.py

@@ -224,7 +224,13 @@ class F4mFD(FileDownloader):
         self.to_screen('[download] Downloading f4m manifest')
         self.to_screen('[download] Downloading f4m manifest')
         manifest = self.ydl.urlopen(man_url).read()
         manifest = self.ydl.urlopen(man_url).read()
         self.report_destination(filename)
         self.report_destination(filename)
-        http_dl = HttpQuietDownloader(self.ydl, {'continuedl': True, 'quiet': True, 'noprogress': True})
+        http_dl = HttpQuietDownloader(self.ydl,
+            {
+                'continuedl': True,
+                'quiet': True,
+                'noprogress': True,
+                'test': self.params.get('test', False),
+            })
 
 
         doc = etree.fromstring(manifest)
         doc = etree.fromstring(manifest)
         formats = [(int(f.attrib.get('bitrate', -1)), f) for f in doc.findall(_add_ns('media'))]
         formats = [(int(f.attrib.get('bitrate', -1)), f) for f in doc.findall(_add_ns('media'))]
@@ -235,6 +241,9 @@ class F4mFD(FileDownloader):
         metadata = base64.b64decode(media.find(_add_ns('metadata')).text)
         metadata = base64.b64decode(media.find(_add_ns('metadata')).text)
         boot_info = read_bootstrap_info(bootstrap)
         boot_info = read_bootstrap_info(bootstrap)
         fragments_list = build_fragments_list(boot_info)
         fragments_list = build_fragments_list(boot_info)
+        if self.params.get('test', False):
+            # We only download the first fragment
+            fragments_list = fragments_list[:1]
         total_frags = len(fragments_list)
         total_frags = len(fragments_list)
 
 
         tmpfilename = self.temp_name(filename)
         tmpfilename = self.temp_name(filename)

+ 1 - 4
youtube_dl/extractor/syfy.py

@@ -10,16 +10,13 @@ class SyfyIE(InfoExtractor):
 
 
     _TEST = {
     _TEST = {
         'url': 'http://www.syfy.com/videos/Robot%20Combat%20League/Behind%20the%20Scenes/vid:2631458',
         'url': 'http://www.syfy.com/videos/Robot%20Combat%20League/Behind%20the%20Scenes/vid:2631458',
+        'md5': 'e07de1d52c7278adbb9b9b1c93a66849',
         'info_dict': {
         'info_dict': {
             'id': 'NmqMrGnXvmO1',
             'id': 'NmqMrGnXvmO1',
             'ext': 'flv',
             'ext': 'flv',
             'title': 'George Lucas has Advice for his Daughter',
             'title': 'George Lucas has Advice for his Daughter',
             'description': 'Listen to what insights George Lucas give his daughter Amanda.',
             'description': 'Listen to what insights George Lucas give his daughter Amanda.',
         },
         },
-        'params': {
-            # f4m download
-            'skip_download': True,
-        },
         'add_ie': ['ThePlatform'],
         'add_ie': ['ThePlatform'],
     }
     }