假设我使用的是Python库,比如requests。requests有一个你需要处理的异常列表:https://2.python-requests.org/en/master/api/#exceptions
在内部,requests使用urllib3库。urllib3可能会使用socket库,该库有自己的异常列表:https://docs.python.org/3/library/socket.html#exceptions
如果我使用的是requests库,我是否需要担心捕获socket库抛出的异常,比如socket.timeout?或者,我的第一个超链接中的requests异常列表是他们的承诺,他们将处理所有较低级别的异常,而我应该看到的唯一异常是requests异常列表中的那些异常?
如果我正在使用requests,并且抛出了socket.timeout异常,我是否应该将其作为错误报告给requests
发布于 2020-12-04 23:46:49
如果您不希望您的程序被一个异常终止,那么您最终要对未捕获的异常负责。
也就是说,将socket.timeout作为bug提交也无伤大雅。这要么是一个bug,要么是文档可以更新,以澄清这样的异常是可能的。在不查看代码的情况下,requests.Timeout的存在表明它可能是一个错误。
https://stackoverflow.com/questions/65146449
复制相似问题