ホームページ >バックエンド開発 >Python チュートリアル >Python での API の操作: 実践ガイド
抜粋:
「API により、ソフトウェア アプリケーションがモジュール化されます。ソフトウェア開発時間を短縮します。
アプリケーション プログラミング インターフェイス (または API) は、さまざまなソフトウェア アプリケーションとコンポーネント間の通信を可能にする抽象化されたレイヤーです。このコミュニケーションはどのようにして起こるのでしょうか?この記事で取り上げる Web API は、クライアントが使用するソフトウェア アプリケーションと、情報が保存されているデータベースの間に位置します。さまざまな種類の API については、こちらをご覧ください。通信は、個々のソフトウェア アプリケーションが作成されたプログラミング言語に関係なく行われます。 Python、Java、JavaScript など。ソフトウェア アプリケーションから API に送信されたリクエストが、取得、更新、削除、作成操作のいずれであっても有効であることが条件です。
特定のユーザーが写真を投稿する Instagram のようなソーシャル メディア プラットフォームを想像してください。内部的には、ユーザーが所定の Instagram API エンドポイントに対して POST リクエストを行っていることになります。画像をデータベースに送信します。別のユーザーは、タイムラインをスクロールしているときに、API に GET リクエストを行うことで、意図せずに投稿を見ることができます。 API を介して通信が行われていることがわかります。
これは、2 人のユーザーが API を介して、異なる言語で書かれたソフトウェア アプリケーションと通信している場合にも当てはまります。
以下の図は、API を介して通信する 2 つの異なるソフトウェア アプリケーションを示しています。
著者による写真
さらに、API によりソフトウェア アプリケーションがモジュール化されます。ソフトウェア開発時間を短縮します。モジュラーとは、API 実装がコード ベースから分離されているという意味で、API を呼び出すだけで済みます。 API と同様の機能を提供するコードを最初から記述する必要がなく、呼び出すだけで済むため、開発時間が短縮されます。
この記事では、Python を使用して公開されている API を利用する方法を学びます。乞うご期待。
この記事は、Python での特定の実装を使用して API について理解を深めたいと考えている初心者レベルの Python プログラマーに適しています。
一緒に練習するには、マシンがインターネットに接続されていることを確認してください。
この記事は、経験豊富な Python 開発者向けの復習としても役立ちます。
この記事を最後まで読み進めることで、次のことを行う必要があります。
Python のリクエスト ライブラリについて学習します。
GET、PUT、PATCH、DELETE、POST リクエストの作成方法を理解します。
API 呼び出しから受信したデータをコード内に保存して利用する方法を学びます。
requests は、最もダウンロードされた Python パッケージの 1 つであり、pypi によると毎週約 3,000 万ダウンロードされています。これにより、Python で HTTP リクエストを簡単に送信できるようになります。 request は、テスト済みで信頼できる Python パッケージであり、IBM などの多くの確立されたブランドで使用されています。ここでソース コードを見つけてください。
リクエストの「人気の」機能には次のようなものがあります:
キープアライブと接続プーリング
国際ドメインと URL
Cookie 永続性を使用したセッション
ブラウザスタイルの SSL 検証
コンテンツの自動デコード
ベーシック/ダイジェスト認証
エレガントなキー/値 Cookie
自動解凍
Unicode レスポンスボディ
HTTP(S) プロキシのサポート
マルチパート ファイルのアップロード
ストリーミング ダウンロード
接続タイムアウト
分割されたリクエスト
.netrc サポート
マシンにはすでに Python がインストールされていると思います。以下の手順に従って、リクエスト パッケージをインストールします:
Linux または Mac OS では、ターミナルを開いて次の操作を実行します。
python3 -m pip install requests
Windows では次のようにします:
python -m pip install requests
これにより、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 によって指定されます。通常はこれが指定されます。
これは 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 を操作するための一般的なライブラリは他にもありますが、そのシンプルさのために request ライブラリが選択されました。
この記事の最後までお付き合いいただき、ありがとうございます。これにより、Python で API の使用を開始するための良い背景が得られます。
以上がPython での API の操作: 実践ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。