摘錄:
「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中文網其他相關文章!