什么类型的异常是urllib3连接失败?

时间:2016-12-19 08:46:37

标签: python flask python-requests

我有一段代码,当它连接的主机的IP地址错误时会给我一个urllib3错误,并且还会阻止应用程序启动。

此连接尝试位于视图中(不是主视图),我假设在应用程序启动时正在调用它。

我想写一个try来检查这个异常,但是,错误没有提到它看到的异常类型。

问:在应用程序启动时,我可以在try中指定哪种异常类型来处理此错误?

错误

  

无法导入应用
  错误:HTTPSConnectionPool(host = '10 .0.0.1',port = 834):使用url:/ items超出了最大重试次数(由NewConnectionError引起(':无法建立新连接:[Errno 113]无主机路由',) )

提前致谢。

2 个答案:

答案 0 :(得分:2)

谢谢@ cricket_007

通过导入请求的异常来解决它。

from requests.exceptions import ConnectionError

然后在try语句中触发。

try:
    <<something>>
except ConnectionError:
    <<something>>

答案 1 :(得分:0)

在回答实际问的问题时,您可以通过其__bases__元组找到Python类的基类。例如,

>>> class MyZeroDivide( ZeroDivisionError):
...   pass
>>> z = MyZeroDivide()  # instance
>>> z.__class__        
<class '__main__.MyZeroDivide'>  # class
>>> z.__class__.__bases__
(<type 'exceptions.ZeroDivisionError'>,)  # base class(es)
>>> z.__class__.__bases__[0].__bases__
(<type 'exceptions.ArithmeticError'>,)    # up a level
>>> z.__class__.__bases__[0].__bases__[0].__bases__
(<type 'exceptions.StandardError'>,)      # up two levels