摘录:
“API 使软件应用程序模块化。它们加快了软件开发时间”。
应用程序编程接口(或 API)是一个抽象层,可实现不同软件应用程序和组件之间的通信。这种沟通是如何发生的? Web API 恰好是我们将在本文中详细讨论的内容,它位于客户端使用的软件应用程序和存储信息的数据库之间。请在此处了解不同类型的 API。通信的发生与编写各个软件应用程序所使用的编程语言无关;无论是 Python、Java、JavaScript 等。只要从软件应用程序发送到 API 的请求有效,无论是检索、更新、删除还是创建操作。
想象一下像 Instagram 这样的社交媒体平台,其中特定用户发布了一张图片,内部发生的情况是用户正在向规定的 Instagram API 端点发出 POST 请求;发送图片到数据库。另一个用户可以通过向 API 发出 GET 请求来查看该帖子,而在滚动时间轴时甚至不知道这一点。您会看到那里存在通过 API 进行的通信。
即使两个用户通过 API 使用不同语言编写的软件应用程序进行通信,情况也可能如此。
下图显示了两个不同的软件应用程序通过 API 进行通信。
作者照片
此外,API 使软件应用程序模块化。它们加快了软件开发时间。模块化是指 API 实现与我们的代码库分离,我们只需调用 API。它加快了开发时间,因为我们不必从头开始编写提供与 API 类似的功能的代码,我们只需调用它即可。
在本文中,您将学习如何使用 Python 使用公开可用的 API。敬请关注。
本文适合初级 Python 程序员,他们希望通过 Python 中的具体实现来加深对 API 的理解。
要一起练习,请确保您的机器已连接到互联网。
本文也可以作为经验丰富的 Python 开发人员的复习工具。
读完本文后,您应该:
了解 Python 中的 requests 库。
了解如何发出 GET、PUT、PATCH、DELETE 和 POST 请求。
了解如何在代码中存储和利用从 API 调用接收到的数据。
requests 是下载次数最多的 Python 软件包之一,根据 pypi 的数据,每周下载量约为 3000 万次。它使您能够在 Python 中轻松发送 HTTP 请求。 requests 是一个经过测试且值得信赖的 Python 包,被 IBM 等许多知名品牌所使用。在这里找到源代码。
请求的一些“受人喜爱”的功能是:
保持活动状态和连接池
国际域名和 URL
具有 Cookie 持久性的会话
浏览器式 SSL 验证
自动内容解码
基本/摘要式身份验证
优雅的键/值 Cookie
自动解压
Unicode 响应体
HTTP(S) 代理支持
分段文件上传
流式下载
连接超时
分块请求
.netrc 支持
我假设您的计算机上已经安装了 Python。按照以下说明安装 requests 包:
在 Linux 或 Mac OS 上打开终端并执行以下操作:
python3 -m pip install requests
在 Windows 上:
python -m pip install requests
这会将 请求包下载到您的计算机。
发出 GET 请求来检索现有数据。它返回一个对象,可以进一步探索该对象,以通过调用其所需属性来获取有关所发出请求的更多详细信息。请参阅下面的示例用法:
# Import the requests module import requests # Making a simple GET request response_object = requests.get("https://jsonplaceholder.typicode.com/posts")
从response_object中,可以调用不同的属性:
status_code: 响应的 HTTP 状态代码。
json_data = response_object.json() print(json_data)
返回的 JSON 存储在 json_data 变量中,可以在您的程序中使用。
以下内容将输出到您的控制台。
POST 请求将数据发送到指定端点,创建一条新记录。与寻求检索现有数据的 GET 方法不同。请按照以下步骤发出帖子请求:
python3 -m pip install requests
这会将数据发送到规定的端点,并返回一个响应对象;该对象拥有有关发送的 POST 请求的一些有用信息。可以通过调用对象上合适的属性来访问它。
调用响应对象上的 status_code 属性以确保操作成功。更新您的代码。
python -m pip install requests
它返回 201,这表明您的 POST 请求成功并且已创建新资源。如下图所示。
PUT 请求涉及用新记录替换现有记录;它从发送者或客户端获取新数据并用它替换现有数据。
这是发出 PUT 请求的方式:
# Import the requests module import requests # Making a simple GET request response_object = requests.get("https://jsonplaceholder.typicode.com/posts")
这确保删除特定记录或数据。要删除的记录始终通过其唯一 ID 来指定,该 ID 通常是指定的。
这是执行 DELETE 操作的方式:
json_data = response_object.json() print(json_data)
每当您想要对现有记录或数据进行部分更改时,请使用 PATCH 方法。
# Import the requests module import requests # Making a simple POST request data = {'userId': 1, 'id': 1, 'title': 'This is for POST request', \ 'body': 'This body is modified for this technical writing article by Augustine Alul'} response_object = requests.post("https://jsonplaceholder.typicode.com/posts/", data=data) print(response_object.status_code)
requests 库提供了一种在 Python 代码中发出 HTTP 请求的简单方法;它可以轻松地与 API 进行交互,并返回一个对象,该对象通过简单地调用所需的属性(可以在文章中找到这些属性)来提供有关所发出请求的有用信息。
在 Python 中使用 API 从未如此简单 - 还有其他流行的库可用于与 Python 中的 API 交互,但选择 requests 库是因为它的简单性。
感谢您坚持阅读本文的结尾,这为您开始使用 Python 中的 API 提供了良好的背景。
以上是在 Python 中使用 API:实用指南的详细内容。更多信息请关注PHP中文网其他相关文章!