Python中可以使用requests
库来发送HTTP请求,并使用try-except
语句来捕获404错误。下面是一个示例代码:
import requests
url = "https://api.example.com/data"
try:
response = requests.get(url)
response.raise_for_status() # 如果返回的状态码不是200,会抛出一个HTTPError异常
data = response.json()
# 处理返回的JSON数据
except requests.exceptions.HTTPError as errh:
print("HTTP Error:", errh)
except requests.exceptions.ConnectionError as errc:
print("Error Connecting:", errc)
except requests.exceptions.Timeout as errt:
print("Timeout Error:", errt)
except requests.exceptions.RequestException as err:
print("Error:", err)
在上面的代码中,我们使用requests.get()
方法发送GET请求,并使用response.raise_for_status()
方法来检查返回的状态码。如果状态码不是200,会抛出一个HTTPError
异常,我们可以在try-except
语句中捕获并处理这个异常。
另外,如果需要向API发送JSON数据,可以使用requests.post()
方法,并通过json
参数传递JSON数据。例如:
import requests
url = "https://api.example.com/data"
data = {
"key1": "value1",
"key2": "value2"
}
try:
response = requests.post(url, json=data)
response.raise_for_status()
result = response.json()
# 处理返回的结果
except requests.exceptions.HTTPError as errh:
print("HTTP Error:", errh)
except requests.exceptions.ConnectionError as errc:
print("Error Connecting:", errc)
except requests.exceptions.Timeout as errt:
print("Timeout Error:", errt)
except requests.exceptions.RequestException as err:
print("Error:", err)
以上代码示例了如何使用requests.post()
方法发送POST请求,并通过json
参数传递JSON数据。
推荐的腾讯云相关产品:腾讯云API网关。腾讯云API网关是一种全托管的API服务,可以帮助开发者更轻松地构建、发布、运维、监控和安全保护API。它提供了丰富的功能,包括请求转发、鉴权、限流、缓存、日志、监控等,可以帮助开发者更好地管理和控制API的访问。详细信息请参考腾讯云API网关的产品介绍。
领取专属 10元无门槛券
手把手带您无忧上云