mirror of
				https://github.com/ytdl-org/youtube-dl.git
				synced 2025-10-29 09:26:20 -07:00 
			
		
		
		
	Properly convert errors to strings
This commit is contained in:
		| @@ -48,6 +48,7 @@ from .utils import ( | ||||
|     determine_ext, | ||||
|     DownloadError, | ||||
|     encodeFilename, | ||||
|     error_to_str, | ||||
|     ExtractorError, | ||||
|     format_bytes, | ||||
|     formatSeconds, | ||||
| @@ -681,7 +682,7 @@ class YoutubeDL(object): | ||||
|                 raise | ||||
|             except Exception as e: | ||||
|                 if self.params.get('ignoreerrors', False): | ||||
|                     self.report_error(compat_str(e), tb=compat_str(traceback.format_exc())) | ||||
|                     self.report_error(error_to_str(e), tb=compat_str(traceback.format_exc())) | ||||
|                     break | ||||
|                 else: | ||||
|                     raise | ||||
| @@ -1459,7 +1460,7 @@ class YoutubeDL(object): | ||||
|             if dn and not os.path.exists(dn): | ||||
|                 os.makedirs(dn) | ||||
|         except (OSError, IOError) as err: | ||||
|             self.report_error('unable to create directory ' + compat_str(err)) | ||||
|             self.report_error('unable to create directory ' + error_to_str(err)) | ||||
|             return | ||||
|  | ||||
|         if self.params.get('writedescription', False): | ||||
| @@ -2039,4 +2040,4 @@ class YoutubeDL(object): | ||||
|                                    (info_dict['extractor'], info_dict['id'], thumb_display_id, thumb_filename)) | ||||
|                 except (compat_urllib_error.URLError, compat_http_client.HTTPException, socket.error) as err: | ||||
|                     self.report_warning('Unable to download thumbnail "%s": %s' % | ||||
|                                         (t['url'], compat_str(err))) | ||||
|                                         (t['url'], error_to_str(err))) | ||||
|   | ||||
| @@ -5,9 +5,9 @@ import re | ||||
| import sys | ||||
| import time | ||||
|  | ||||
| from ..compat import compat_str | ||||
| from ..utils import ( | ||||
|     encodeFilename, | ||||
|     error_to_str, | ||||
|     decodeArgument, | ||||
|     format_bytes, | ||||
|     timeconvert, | ||||
| @@ -186,7 +186,7 @@ class FileDownloader(object): | ||||
|                 return | ||||
|             os.rename(encodeFilename(old_filename), encodeFilename(new_filename)) | ||||
|         except (IOError, OSError) as err: | ||||
|             self.report_error('unable to rename file: %s' % compat_str(err)) | ||||
|             self.report_error('unable to rename file: %s' % error_to_str(err)) | ||||
|  | ||||
|     def try_utime(self, filename, last_modified_hdr): | ||||
|         """Try to set the last-modified time of the given file.""" | ||||
|   | ||||
| @@ -30,11 +30,11 @@ from ..utils import ( | ||||
|     clean_html, | ||||
|     compiled_regex_type, | ||||
|     determine_ext, | ||||
|     error_to_str, | ||||
|     ExtractorError, | ||||
|     fix_xml_ampersands, | ||||
|     float_or_none, | ||||
|     int_or_none, | ||||
|     preferredencoding, | ||||
|     RegexNotFoundError, | ||||
|     sanitize_filename, | ||||
|     sanitized_Request, | ||||
| @@ -333,12 +333,8 @@ class InfoExtractor(object): | ||||
|                 return False | ||||
|             if errnote is None: | ||||
|                 errnote = 'Unable to download webpage' | ||||
|             err_str = str(err) | ||||
|             # On python 2 error byte string must be decoded with proper | ||||
|             # encoding rather than ascii | ||||
|             if sys.version_info[0] < 3: | ||||
|                 err_str = err_str.decode(preferredencoding()) | ||||
|             errmsg = '%s: %s' % (errnote, err_str) | ||||
|  | ||||
|             errmsg = '%s: %s' % (errnote, error_to_str(err)) | ||||
|             if fatal: | ||||
|                 raise ExtractorError(errmsg, sys.exc_info()[2], cause=err) | ||||
|             else: | ||||
| @@ -628,7 +624,7 @@ class InfoExtractor(object): | ||||
|                 else: | ||||
|                     raise netrc.NetrcParseError('No authenticators for %s' % self._NETRC_MACHINE) | ||||
|             except (IOError, netrc.NetrcParseError) as err: | ||||
|                 self._downloader.report_warning('parsing .netrc: %s' % compat_str(err)) | ||||
|                 self._downloader.report_warning('parsing .netrc: %s' % error_to_str(err)) | ||||
|  | ||||
|         return (username, password) | ||||
|  | ||||
|   | ||||
| @@ -7,10 +7,10 @@ import itertools | ||||
|  | ||||
| from .common import InfoExtractor | ||||
|  | ||||
| from ..compat import compat_str | ||||
| from ..utils import ( | ||||
|     ExtractorError, | ||||
|     determine_ext, | ||||
|     error_to_str, | ||||
|     ExtractorError, | ||||
|     int_or_none, | ||||
|     parse_iso8601, | ||||
|     sanitized_Request, | ||||
| @@ -278,7 +278,7 @@ class DailymotionIE(DailymotionBaseInfoExtractor): | ||||
|                 'https://api.dailymotion.com/video/%s/subtitles?fields=id,language,url' % video_id, | ||||
|                 video_id, note=False) | ||||
|         except ExtractorError as err: | ||||
|             self._downloader.report_warning('unable to download video subtitles: %s' % compat_str(err)) | ||||
|             self._downloader.report_warning('unable to download video subtitles: %s' % error_to_str(err)) | ||||
|             return {} | ||||
|         info = json.loads(sub_list) | ||||
|         if (info['total'] > 0): | ||||
|   | ||||
| @@ -7,11 +7,11 @@ import socket | ||||
| from .common import InfoExtractor | ||||
| from ..compat import ( | ||||
|     compat_http_client, | ||||
|     compat_str, | ||||
|     compat_urllib_error, | ||||
|     compat_urllib_parse_unquote, | ||||
| ) | ||||
| from ..utils import ( | ||||
|     error_to_str, | ||||
|     ExtractorError, | ||||
|     limit_length, | ||||
|     sanitized_Request, | ||||
| @@ -116,7 +116,7 @@ class FacebookIE(InfoExtractor): | ||||
|             if re.search(r'id="checkpointSubmitButton"', check_response) is not None: | ||||
|                 self._downloader.report_warning('Unable to confirm login, you have to login in your brower and authorize the login.') | ||||
|         except (compat_urllib_error.URLError, compat_http_client.HTTPException, socket.error) as err: | ||||
|             self._downloader.report_warning('unable to log in: %s' % compat_str(err)) | ||||
|             self._downloader.report_warning('unable to log in: %s' % error_to_str(err)) | ||||
|             return | ||||
|  | ||||
|     def _real_initialize(self): | ||||
|   | ||||
| @@ -26,6 +26,7 @@ from ..compat import ( | ||||
| from ..utils import ( | ||||
|     clean_html, | ||||
|     encode_dict, | ||||
|     error_to_str, | ||||
|     ExtractorError, | ||||
|     float_or_none, | ||||
|     get_element_by_attribute, | ||||
| @@ -903,7 +904,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor): | ||||
|                 'https://video.google.com/timedtext?hl=en&type=list&v=%s' % video_id, | ||||
|                 video_id, note=False) | ||||
|         except ExtractorError as err: | ||||
|             self._downloader.report_warning('unable to download video subtitles: %s' % compat_str(err)) | ||||
|             self._downloader.report_warning('unable to download video subtitles: %s' % error_to_str(err)) | ||||
|             return {} | ||||
|  | ||||
|         sub_lang_list = {} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user