### 安装 requests 库****
如果你还没有安装requests库,可以通过pip来安装:
bash复制代码
| pip install requests |
|---|
下面是一个设置超时的示例:
python复制代码
| import requests | |
|---|---|
| from requests.exceptions import Timeout | |
| url = 'api.example.com/data' | |
| try: | |
| # 设置超时时间为5秒 | |
| response = requests.get(url, timeout=5) | |
| response.raise_for_status() # 如果请求返回了不成功的状态码,会抛出HTTPError异常 | |
| # 处理响应数据... | |
| except Timeout: | |
| # 处理超时异常 | |
| print("请求超时,请稍后再试。") | |
| except requests.exceptions.RequestException as e: | |
| # 处理其他类型的请求异常 | |
| print(f"请求发生错误: {e}") |
在上面的示例中,我们使用了try-except语句来捕获可能发生的异常。如果请求超时,将执行except Timeout块中的代码;如果请求返回了不成功的状态码,response.raise_for_status()将抛出一个HTTPError异常,但由于我们没有为HTTPError设置专门的except块,所以它将由except requests.exceptions.RequestException as e块捕获。
总结****
在Python中使用requests库发送HTTP请求时,通过设置timeout参数可以有效地处理超时问题。当请求超时时,程序将捕获Timeout异常并执行相应的处理逻辑,从而避免程序因等待响应而陷入阻塞状态。同时,你还可以根据实际需求为连接和读取设置不同的超时时间。