欢迎访问宙启技术站
智能推送

requests.models模块中超时设置的方法

发布时间:2024-01-14 21:59:09

在requests模块中,可以使用timeout参数来设置请求的超时时间。timeout参数的值可以是一个整数或者一个元组,用来设置请求的连接超时和读取超时时间。

### 设置连接超时时间

当请求发出后,在指定的时间内服务器没有应答,那么就引发一个连接超时的异常。

以下是一个例子,设置连接超时时间为5秒:

import requests

try:
    response = requests.get('http://www.example.com', timeout=5)
    print(response.text)
except requests.exceptions.Timeout:
    print('Timeout error')

### 设置读取超时时间

在服务器连接成功后,在指定的时间内服务器没有发送完数据,那么就引发一个读取超时的异常。

以下是一个例子,设置读取超时时间为10秒:

import requests

try:
    response = requests.get('http://www.example.com', timeout=(5, 10))
    print(response.text)
except requests.exceptions.ReadTimeout:
    print('Read timeout error')

### 设置同时设置连接超时和读取超时时间

可以同时设置连接超时和读取超时时间,这里的超时时间参数是一个元组,第一个元素是连接超时时间,第二个元素是读取超时时间。

以下是一个例子,设置连接超时时间为5秒,读取超时时间为10秒:

import requests

try:
    response = requests.get('http://www.example.com', timeout=(5, 10))
    print(response.text)
except requests.exceptions.Timeout:
    print('Timeout error')
except requests.exceptions.ReadTimeout:
    print('Read timeout error')

以上就是使用requests模块设置超时时间的方法和示例。超时时间的设置可以根据实际需要来进行调整,以确保请求在合理的时间内得到响应,并避免长时间等待或异常的发生。