使用 Python 实现一个 REST API 客户端,你可以使用多个库,其中常用和易用的一个是
requests 库。以下是一个简单的示例,展示了如何使用
requests 库来实现一个 REST API 客户端,包括基本的 GET、POST、PUT 和 DELETE 请求。
首先,你需要安装
requests 库。如果你还没有安装它,可以使用以下命令:
bashCopy Codepip install requests
接下来,你可以按照以下步骤实现一个简单的 REST API 客户端:
requests 库以下是一个完整的示例代码:
pythonCopy Codeimport requests# 设置 API 的基础 URLBASE_URL = "https://jsonplaceholder.typicode.com"def get_resource(endpoint): """
发送 GET 请求
"""
url = f"{BASE_URL}{endpoint}"
try:
response = requests.get(url)
response.raise_for_status() # 如果请求失败,抛出 HTTPError
return response.json() except requests.exceptions.HTTPError as http_err: print(f"HTTP error occurred: {http_err}") except Exception as err: print(f"Other error occurred: {err}")def post_resource(endpoint, data): """
发送 POST 请求
"""
url = f"{BASE_URL}{endpoint}"
try:
response = requests.post(url, json=data)
response.raise_for_status() return response.json() except requests.exceptions.HTTPError as http_err: print(f"HTTP error occurred: {http_err}") except Exception as err: print(f"Other error occurred: {err}")def put_resource(endpoint, data): """
发送 PUT 请求
"""
url = f"{BASE_URL}{endpoint}"
try:
response = requests.put(url, json=data)
response.raise_for_status() return response.json() except requests.exceptions.HTTPError as http_err: print(f"HTTP error occurred: {http_err}") except Exception as err: print(f"Other error occurred: {err}")def delete_resource(endpoint): """
发送 DELETE 请求
"""
url = f"{BASE_URL}{endpoint}"
try:
response = requests.delete(url)
response.raise_for_status() return response.json() except requests.exceptions.HTTPError as http_err: print(f"HTTP error occurred: {http_err}") except Exception as err: print(f"Other error occurred: {err}")# 示例使用if __name__ == "__main__": # GET 请求示例
print("GET request:")
get_response = get_resource("/posts/1") print(get_response) # POST 请求示例
print("\nPOST request:")
post_data = { "title": "foo", "body": "bar", "userId": 1,
}
post_response = post_resource("/posts", post_data) print(post_response) # PUT 请求示例 (注意:jsonplaceholder.typicode.com 不支持真实的 PUT 更新)
print("\nPUT request:")
put_data = { "id": 1, "title": "foo updated", "body": "bar updated", "userId": 1,
}
put_response = put_resource("/posts/1", put_data) print(put_response) # DELETE 请求示例 (注意:jsonplaceholder.typicode.com 不支持真实的 DELETE)
print("\nDELETE request:")
delete_response = delete_resource("/posts/1") print(delete_response)
try-except 块来捕获和处理 HTTP 错误和其他异常。jsonplaceholder.typicode.com,这是一个公开的假数据 API,非常适合测试。如果你需要访问实际的 API,请确保你有正确的 API 端点和认证信息(如 API 密钥、OAuth 令牌等)。通过这些步骤,你可以轻松地使用 Python 实现一个 REST API 客户端。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70040412/viewspace-3051086/ ,如需转载,请注明出处,否则将追究法律责任。