[spiegel] Use centralized sorting
This commit is contained in:
		@@ -438,6 +438,11 @@ class InfoExtractor(object):
 | 
			
		||||
 | 
			
		||||
    def _sort_formats(self, formats):
 | 
			
		||||
        def _formats_key(f):
 | 
			
		||||
            # TODO remove the following workaround
 | 
			
		||||
            from ..utils import determine_ext
 | 
			
		||||
            if not f.get('ext') and 'url' in f:
 | 
			
		||||
                f['ext'] = determine_ext(f['url'])
 | 
			
		||||
 | 
			
		||||
            preference = f.get('preference')
 | 
			
		||||
            if preference is None:
 | 
			
		||||
                preference = 0 if f.get('url', '').startswith('http') else -0.1
 | 
			
		||||
 
 | 
			
		||||
@@ -51,9 +51,10 @@ class SpiegelIE(InfoExtractor):
 | 
			
		||||
            # Blacklist type 6, it's extremely LQ and not available on the same server
 | 
			
		||||
            if n.tag.startswith('type') and n.tag != 'type6'
 | 
			
		||||
        ]
 | 
			
		||||
        formats.sort(key=lambda f: f['vbr'])
 | 
			
		||||
        duration = float(idoc[0].findall('./duration')[0].text)
 | 
			
		||||
 | 
			
		||||
        self._sort_formats(formats)
 | 
			
		||||
 | 
			
		||||
        info = {
 | 
			
		||||
            'id': video_id,
 | 
			
		||||
            'title': video_title,
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user