在使用Python的requests
库进行网络请求时,异常捕获是非常重要的,因为它可以帮助你处理可能出现的网络问题或其他错误。你可以使用try-except
语句来捕获异常。以下是一个简单的示例:
import requests
from requests.exceptions import RequestException
url = 'https://api.example.com/data'
try:
response = requests.get(url)
response.raise_for_status() # 如果响应状态码不是200,将抛出异常
except RequestException as e:
print(f'请求发生异常:{e}')
else:
try:
data = response.json() # 假设返回的数据是JSON格式
print(data)
except ValueError as e:
print(f'解析JSON数据时发生异常:{e}')
在这个示例中,我们首先尝试使用requests.get()
发起一个GET请求。如果请求过程中发生任何异常(例如网络连接问题、超时等),RequestException
将被捕获并打印错误信息。
如果请求成功,我们将检查响应的状态码。如果不是200,我们使用raise_for_status()
方法抛出一个异常。然后,在else
子句中,我们尝试解析响应的JSON数据。如果解析过程中发生异常(例如,响应内容不是有效的JSON格式),我们将捕获ValueError
并打印错误信息。