mirror of
				https://gitlab.com/ytdl-org/youtube-dl.git
				synced 2025-11-04 08:17:08 -05:00 
			
		
		
		
	improve generic and encrypted signature error messages
This commit is contained in:
		@@ -211,7 +211,7 @@ class InfoExtractor(object):
 | 
			
		||||
            raise ExtractorError(u'Unable to extract %s' % _name)
 | 
			
		||||
        else:
 | 
			
		||||
            self._downloader.report_warning(u'unable to extract %s; '
 | 
			
		||||
                u'please report this issue on GitHub.' % _name)
 | 
			
		||||
                u'please report this issue on http://yt-dl.org/bug' % _name)
 | 
			
		||||
            return None
 | 
			
		||||
 | 
			
		||||
    def _html_search_regex(self, pattern, string, name, default=None, fatal=True, flags=0):
 | 
			
		||||
 
 | 
			
		||||
@@ -129,12 +129,13 @@ class YoutubeIE(InfoExtractor):
 | 
			
		||||
        """Indicate the download will use the RTMP protocol."""
 | 
			
		||||
        self.to_screen(u'RTMP download detected')
 | 
			
		||||
 | 
			
		||||
    @staticmethod
 | 
			
		||||
    def _decrypt_signature(s):
 | 
			
		||||
    def _decrypt_signature(self, s):
 | 
			
		||||
        """Decrypt the key the two subkeys must have a length of 43"""
 | 
			
		||||
        (a,b) = s.split('.')
 | 
			
		||||
        if len(a) != 43 or len(b) != 43:
 | 
			
		||||
            raise ExtractorError(u'Unable to decrypt signature, subkeys lengths not valid')
 | 
			
		||||
            raise ExtractorError(u'Unable to decrypt signature, subkeys lengths %d.%d not supported; retrying might work' % (len(a), len(b)))
 | 
			
		||||
        if self._downloader.params.get('verbose'):
 | 
			
		||||
            self.to_screen('encrypted signature length %d.%d' % (len(a), len(b)))
 | 
			
		||||
        b = ''.join([b[:8],a[0],b[9:18],b[-4],b[19:39], b[18]])[0:40]
 | 
			
		||||
        a = a[-40:]
 | 
			
		||||
        s_dec = '.'.join((a,b))[::-1]
 | 
			
		||||
 
 | 
			
		||||
@@ -474,7 +474,7 @@ class ExtractorError(Exception):
 | 
			
		||||
        """ tb, if given, is the original traceback (so that it can be printed out). """
 | 
			
		||||
 | 
			
		||||
        if not sys.exc_info()[0] in (compat_urllib_error.URLError, socket.timeout, UnavailableVideoError):
 | 
			
		||||
            msg = msg + u'; please report this issue on GitHub.'
 | 
			
		||||
            msg = msg + u'; please report this issue on http://yt-dl.org/bug'
 | 
			
		||||
        super(ExtractorError, self).__init__(msg)
 | 
			
		||||
 | 
			
		||||
        self.traceback = tb
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user