デジタルトレンドナビ
システム開発

2024.04.16

Python requestsを徹底解説!インストール・使い方など

Python requestsを徹底解説!インストール・使い方など

Pythonは、オープンソースのプログラミング言語です。構文が比較的シンプルなため、初心者向けの言語としても知られています。

Pythonでプログラムを開発するにあたって、必ず活用するものがライブラリです。ライブラリは頻繁に使う関数やパッケージをまとめたもので、それぞれできることが異なります。requestsは、そんなPythonで利用されるパッケージのひとつです。

今回は、プログラミング経験が浅い方向けに、導入方法や利用方法などの基礎知識を解説します。興味を持った人は、ぜひ最後までご覧ください。

この記事でわかること

  • Python requestsに関する基礎知識
  • Python requestsの導入手順
  • Python requestsの使用方法

Python requestsとは

Python requestsとは

requestsは、HTTP通信用のライブラリとして知られています。HTTPとは、ウェブサーバーとウェブブラウザの間で、情報のやり取りをするためのプロトコルのことです。このHTTPによって、オンライン上で情報収集やブログを読む際、サーバーとクライアント間のやり取りが可能になります。

requestsを活用すれば、オンライン上にあるウェブサイトの情報取得や画像の収集などが簡単に実行できます。

使用場面

主にウェブスクレイピングで、HTMLやXMLファイルから情報を取得する際に使用されます。ウェブスクレイピングとは、特定の情報を自動的に抽出するコンピュータソフトウェア技術のことです。

オンライン上に散らばっている情報を収集するのは困難ですが、ウェブスクレイピングができれば、作業効率を大幅に向上させられます。オンライン上で閲覧可能なウェブサイトの多くは、HTMLやXMLが使用されているため、活用できる場面も少なくありません。

urllib.requestとの違い

requestと混同されがちな存在として、urllib.requestの名前が挙げられます。urllib.requestとは、URLを取得するためのPythonモジュールのことです。両者の相違点はさまざまですが、一例を挙げるとurllib.requestは標準ライブラリ、requestsは外部ライブラリという違いがあります。

urllib.requestは、Pythonを導入した時点で自動的に組み込まれる標準ライブラリのため、すぐに使用可能です。しかし、情報を取得するまでの一通りの動作を細かに記述しなければなりません。

一方のrequestsは外部ライブラリ、つまり外部の企業や一般のプログラマが開発したもののため、あらかじめ導入していなければ使用できませんが、より簡潔なコードでurllib.requestと同じ動作をさせられます。

Python requestsのインストール方法

Python requestsのインストール方法

requestsパッケージをダウンロードし、パソコンに導入するときは、pipと呼ばれるコマンドを使用してください。Windowsならコマンドプロンプトから、Macならターミナルから以下のようにコマンドを記述します。

pip install requests

あとはエンターキーを押して実行するだけで、ダウンロードが始まります。とくに問題がなければそのまま導入は完了しますが、エラーが発生し、途中で処理が止まってしまうケースも少なくありません。

そのようなときは、インターネット環境に問題がないか、古いバージョンのpipを使用していないか確認してください。pipをアップグレードする際は、以下のコマンドを用います。

pip install –upgrade pip

また、requestsが正常に導入されているか確認したいときは、以下のコマンドを入力すればパッケージの種類やバージョンを確認できます。

pip list

Python requestsの使い方

Python requestsの使い方

最後に、requestsをどのように実装するのか、サンプルコードと一緒に解説します。プログラミングを勉強中の方は、ぜひ参考にしてください。

GETリクエストの送信

GETリクエストは、ウェブサーバーから情報を取り出す際に用います。以下は、GETリクエストを実装する際の具体的な記述例です。

import requests

url = “http://example.com/api/items”
params = {“category”: “food”, “order”: “desc”}

response = requests.get(url, params=params)

print(response.status_code)
print(response.text)

GETリクエストの主な目的はデータの取得です。そのため、コードを記述するときはパラメータ指定に注意してください。

POSTリクエストの送信

POSTリクエストは、サーバー上にある情報の更新や、新規リソースを作成する際に使用します。POSTリクエストを送信する基本的なコードの書き方は、以下のとおりです。

import requests

url = “http://example.com/api/”
data = {“key1”: “value1”, “key2”: “value2”}

response = requests.post(url, data=data)

print(response.status_code)
print(response.text)

こちらの例では、第一引数にリクエスト送信先のURL、そしてdata引数にPOSTデータを辞書型で指定しています。

PUTリクエストの送信

PUTリクエストは、リソースの情報をすべて置き換えたいときに用いられます。実装する際は、リクエストのURLは更新対象のリソースを特定しなければなりません。

実際の記述方法は、以下のとおりです。

import requests

url = “http://example.com/api/items/1”
data = {“name”: “new item”, “price”: “100”}

response = requests.put(url, data=data)

print(response.status_code)
print(response.text)

POSTリクエストと混同する人も多いですが、POSTリクエストは新規作成や部分更新をするために実装するものなので、使用目的が異なります。それぞれの相違点を理解したうえで、使い分けられるようにしてください。

DELETEリクエストの送信

DELETEリクエストは、主にリソースの削除に用いられます。リクエストボディは必要ないケースが多く、URLだけを指定するのが一般的です。以下は、具体的な記述方法の例になります。

import requests

url = “http://example.com/api/items/1”

headers = {“Content-Type”: “application/json”}

response = requests.delete(url, headers=headers)

print(response.status_code)

if response.status_code == 204:
print(“Successfully deleted the resource.”)

最後の条件分岐でstatus_codeで削除の成功、または失敗を判定しています。

こちらの記事では、Pythonの「from import」の意味やimportとの違いについて解説します。ぜひあわせてご覧ください。

まとめ

まとめ

以上、Python requestsの基本情報を中心に、導入方法や具体的なコードの記述方法について取り上げてきました。オンライン上に散らばっている情報を手動で収集するのは困難ですが、requestsを使用すれば作業効率を大幅に向上させられます。

プログラミング初心者の方が実装する際は、最初はデータの動きが追えずに苦労するかもしれませんが、コードを書き続けることで徐々に動きがわかるようになるはずです。参考書やオンライン上で公開されているサンプルコードなども手本にしながら、積極的に学習に取り組んでください。

投稿者

  • デジタルトレンドナビ編集部

    システム開発、Webサイト制作、ECサイトの構築・運用、デジタルトランスフォーメーション(DX)など、デジタルビジネスに関わる多岐の領域において、最新のトレンド情報や実践的なノウハウを発信してまいります。