mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-11-04 08:35:12 +00:00 
			
		
		
		
	[qqmusic] Use _check_formats instead
This commit is contained in:
		@@ -9,13 +9,8 @@ from .common import InfoExtractor
 | 
				
			|||||||
from ..utils import (
 | 
					from ..utils import (
 | 
				
			||||||
    strip_jsonp,
 | 
					    strip_jsonp,
 | 
				
			||||||
    unescapeHTML,
 | 
					    unescapeHTML,
 | 
				
			||||||
    HEADRequest,
 | 
					 | 
				
			||||||
    ExtractorError,
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
from ..compat import (
 | 
					 | 
				
			||||||
    compat_urllib_request,
 | 
					 | 
				
			||||||
    compat_HTTPError,
 | 
					 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					from ..compat import compat_urllib_request
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class QQMusicIE(InfoExtractor):
 | 
					class QQMusicIE(InfoExtractor):
 | 
				
			||||||
@@ -104,24 +99,15 @@ class QQMusicIE(InfoExtractor):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        formats = []
 | 
					        formats = []
 | 
				
			||||||
        for format_id, details in self._FORMATS.items():
 | 
					        for format_id, details in self._FORMATS.items():
 | 
				
			||||||
            video_url = 'http://cc.stream.qqmusic.qq.com/%s%s.%s?vkey=%s&guid=%s&fromtag=0' \
 | 
					 | 
				
			||||||
                        % (details['prefix'], mid, details['ext'], vkey, guid)
 | 
					 | 
				
			||||||
            req = HEADRequest(video_url)
 | 
					 | 
				
			||||||
            try:
 | 
					 | 
				
			||||||
                res = self._request_webpage(
 | 
					 | 
				
			||||||
                    req, mid, note='Testing %s video URL' % format_id, fatal=False)
 | 
					 | 
				
			||||||
            except ExtractorError as e:
 | 
					 | 
				
			||||||
                if isinstance(e.cause, compat_HTTPError) and e.cause.code in [400, 404]:
 | 
					 | 
				
			||||||
                    self.report_warning('Invalid %s video URL' % format_id, mid)
 | 
					 | 
				
			||||||
            else:
 | 
					 | 
				
			||||||
                if res:
 | 
					 | 
				
			||||||
            formats.append({
 | 
					            formats.append({
 | 
				
			||||||
                        'url': video_url,
 | 
					                'url': 'http://cc.stream.qqmusic.qq.com/%s%s.%s?vkey=%s&guid=%s&fromtag=0'
 | 
				
			||||||
 | 
					                       % (details['prefix'], mid, details['ext'], vkey, guid),
 | 
				
			||||||
                'format': format_id,
 | 
					                'format': format_id,
 | 
				
			||||||
                'format_id': format_id,
 | 
					                'format_id': format_id,
 | 
				
			||||||
                'preference': details['preference'],
 | 
					                'preference': details['preference'],
 | 
				
			||||||
                'abr': details.get('abr'),
 | 
					                'abr': details.get('abr'),
 | 
				
			||||||
            })
 | 
					            })
 | 
				
			||||||
 | 
					        self._check_formats(formats, mid)
 | 
				
			||||||
        self._sort_formats(formats)
 | 
					        self._sort_formats(formats)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        return {
 | 
					        return {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user