在使用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并打印錯誤信息。