在python请求ConnectTimeout之后接收状态代码

时间:2018-07-02 23:17:51

标签: python python-requests

如果请求引发异常,是否可以接收请求的状态代码?我正在尝试发送请求,但是有一个ConnectionTimeout。我尝试打印错误,但是错误消息中没有有用的状态信息。至少在我看来,抛出异常时,requests.request()返回的实际对象似乎没有被创建。这可能是由于内部服务器配置引起的吗?

我尝试过的事情:

try:
    response = requests.request(
        method=some_http_method,
        url=some_url,
        auth=some_auth,
        data=some_data,
        timeout=30,
        verify=some_certificate)
except requests.exceptions.ConnectTimeout as e:
    response = e.response 
    print(e)
    print(response.status_code) # should print a status code, instead response is still None

1 个答案:

答案 0 :(得分:1)

异常ConnectTimeout表示该请求在尝试连接到远程服务器时超时。因此,没有响应可以获取状态代码。通常,response变量为None

可能是网络问题,请确保您要查询的URL可以访问(使用curl进行验证)