gpt4 book ai didi

Python 继续使用 requests 库处理 gaierror

转载 作者:行者123 更新时间:2023-12-03 08:24:28 27 4
gpt4 key购买 nike

我正在使用 python 的请求库,我希望代码在此 ('Connection aborted.', gaierror(-2, 'Name or service not known')) 时继续运行。发生错误。出于某种原因,我的 try catch 被忽略,该错误导致应用程序无论如何都退出。

我的代码:

try:
self.doSomething();
except requests.exceptions.ConnectionError as e:
self.logger.error("A connection error occured.");
self.logger.error(str(e) + "\n");
except Exception as e:
self.logger.error("An error occured.");
self.logger.error(str(e) + "\n");

最佳答案

如果错误是 socket.gaierror ,它是 OSError 的子类这是 Exception 的子类,然后是 except Exception应执行条款。

Try/except 是 Python 中的强大工具,但是,如果不小心使用,它很容易隐藏错误。有时最好的方法是删除 try/except 并阅读完整的回溯。另一种效果很好的方法是记录完整的回溯,不幸的是,对于 Python 新手来说,到处都是错误的例子。要获得完整的回溯,您需要删除 try/except 或使用

import traceback

try:
risky_call()
except Exception:
print(traceback.print_exc())

或者,如果您配置了记录器
import logging

try:
risky_call()
except Exception:
logging.exception('')

关于Python 继续使用 requests 库处理 gaierror,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45700155/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com