使用 requests 库调用 API:先安装并导入 requests,通过 get()或 post()发送请求,传入 URL、参数和请求头,检查 状态码 并解析jsON 响应,同时设置超时和异常处理以提升程序稳定性。

如果您需要从 python 程序中获取外部服务的数据或触发远程操作,调用 API接口 是一种常见方式。以下是完成这一任务的具体步骤和实现方法:
一、使用 requests 库发送 http 请求
requests 是 Python 中最常用的第三方库之一,用于简化与 Web API 的交互过程。它支持多种 HTTP 方法,并能轻松处理请求头、参数和响应数据。
1、安装 requests 库:在命令行中执行 pip install requests 以安装该库。
2、导入 requests 模块到 python 脚本 中:import requests。
立即学习“Python 免费学习笔记(深入)”;
3、构造 GET 请求:使用 requests.get()函数并传入目标 URL,例如response = requests.get(“https://api.example.com/data”)。
4、检查响应 状态码:通过判断 response.status_code 是否等于 200 来确认请求是否成功。
5、解析返回内容:若 API 返回 json 格式数据,可调用 response.json()方法将其转换为 Python 字典 对象。
二、传递请求参数与自定义请求头
许多 API 要求客户端提供查询参数或认证信息(如 API 密钥),这些可以通过参数化 URL 或设置请求头来实现。
1、添加查询参数:将参数组织为字典形式,并作为 params 参数传入 requests.get(),例如params = {“key”: “value”}。
2、设置请求头:构建包含必要字段的 headers 字典,如 Authorization 和 Content-Type,并在请求时传入 headers 参数。
3、发起带参数的请求:调用 requests.get(url, params=params, headers=headers)完成请求发送。
4、验证请求结果:打印 response.url 确认最终请求地址正确,同时查看 response.headers 了解服务器返回的元信息。
三、使用 POST 方法提交数据
当需要向服务器提交数据(如创建资源)时,应使用 POST 请求。这类请求通常携带 JSON 或表单格式的数据体。
1、准备要发送的数据:将数据构造成 Python 字典,例如data = {“name”: “Alice”, “age”: 30}。
2、设置请求头以指定内容类型:确保 headers 中包含‘Content-Type’: ‘application/json‘。
3、发送 POST 请求:调用 requests.post(url, json=data, headers=headers),注意使用 json 参数自动序列化数据并设置正确的内容类型。
4、读取服务器响应:通过 response.text 或 response.json()获取返回结果,用于后续处理或验证操作是否成功。
四、处理异常与超时设置
网络请求可能因连接失败、超时或无效响应而中断,因此必须加入适当的错误处理机制以增强程序稳定性。
1、设置请求超时时间:在调用 requests.get()或 requests.post()时添加 timeout 参数,例如 timeout=10 表示等待响应最多 10 秒。
2、捕获常见异常:使用try-except 结构包裹请求代码,分别处理 requests.exceptions.Timeout、requests.exceptions.ConnectionError 等错误类型。
3、根据异常类型做出响应:针对超时情况可重试请求,而对于连接错误则可提示用户检查网络配置。
4、确保资源释放:即使发生异常,也应保证程序不会卡死或泄露连接资源,建议结合上下文管理器或 finally 语句进行清理。