Python第三方requests库Exception异常类详解(3/6)
概括为URL无效异常、HTTP状态码异常、连接异常,具体又分为8个异常名称。
2个异常基类:RequestException(包含所有requests异常)、ConnectError(包含4种连接异常)
4个具体连接异常:
ConnectTimeout(未在指定时间内连接到服务器)
ReadTimeout(成功连接服务器,等待服务器响应超时)
Timeout(包含ConnectTimeout和ReadTimeout异常)
TooManyRedirects(重定向数超过设定的最大次数)
1个URL无效异常:URLRequired
1个状态码异常:HTTPError代表客户端或服务器端错误。
1、exception requests.RequestException(*args, **kwargs)
这个异常是requests库中所有请求异常的基类,任何异常都会触发它,因此如想捕获特定的异常,可以参考后面的具体异常捕获方法。
2、exception requests.ConnectionError(*args, **kwargs)
表示与请求相关的连接错误。它是一个基类,包括了:ConnectTimeout、ReadTimeout、Timeout、TooManyRedirects四个异常。
3、exception requests.HTTPError(*args, **kwargs)
当HTTP请求返回一个错误状态码时触发。
例如服务器返回的HTTP响应码为4xx客户端错误或5xx服务器错误,HTTPError就会触发。
4、exception requests.URLRequired(*args, **kwargs)
表示在发起请求时未提供有效的URL。
5、exception requests.TooManyRedirects(*args, **kwargs)
当请求超过设定的最大重定向次数时触发。
6、exception requests.ConnectTimeout(*args, **kwargs)
表示在尝试建立连接时,未在指定的时间内成功建立连接。
这可能是由于网络问题、服务器问题或防火墙/代理设置导致。
7、exception requests.ReadTimeout(*args, **kwargs)
表示请求已成功接连,在等待服务器响应时超时。
这可能是服务器响应速度较慢,或返回的数据量太大,服务器处理请求时间较长时发生。
8、exception requests.Timeout(*args, **kwargs)
当请求超时时触发。捕获此错误时会同时获取ConnectTimeout和ReadTimeout错误。

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)