カテゴリ: Python 更新日: 2026/05/03

PythonでAPIリクエストを送信する方法を完全解説!requestsライブラリで簡単API通信

PythonでAPIリクエストを送信する方法(requestsライブラリ)
PythonでAPIリクエストを送信する方法(requestsライブラリ)

先生と生徒の会話形式で理解しよう

生徒

「PythonでAPIってよく聞くんですが、そもそもAPIって何なんですか?」

先生

「APIは、簡単に言うと『インターネット上のサービスとプログラムが会話するための仕組み』です。例えば、天気情報サイトのデータを自分のPythonプログラムから取得することもできます。」

生徒

「Pythonからインターネットのデータを取れるんですか?」

先生

「できます。そのときによく使われるのがPythonのrequestsライブラリです。これを使うと、初心者でも簡単にAPIリクエストを送信できます。」

生徒

「難しそうですが、初心者でも理解できますか?」

先生

「基本から順番に説明すれば大丈夫です。PythonでAPIリクエストを送る方法を見ていきましょう。」

1. PythonのAPIリクエストとは?

1. PythonのAPIリクエストとは?
1. PythonのAPIリクエストとは?

PythonのAPIリクエストとは、Pythonプログラムからインターネット上のサービスへデータを要求する処理のことです。 例えば次のようなことができます。

  • 天気APIから天気情報を取得する
  • ニュースAPIから最新ニュースを取得する
  • Webサービスのデータを自動取得する

このような処理を行うときに使うのがAPI(Application Programming Interface)です。 APIとは簡単に言うと、プログラム同士が情報をやり取りするための窓口です。

そしてPythonでAPI通信をする場合、多くの開発者が利用しているのがrequestsライブラリです。requestsはPythonのHTTP通信ライブラリで、Web APIへのアクセスを簡単にしてくれる便利なツールです。

2. requestsライブラリとは?

2. requestsライブラリとは?
2. requestsライブラリとは?

requestsライブラリとは、PythonでHTTP通信を行うための人気ライブラリです。 HTTPとは、Webサイトを見るときにも使われている通信ルールのことです。

難しく聞こえるかもしれませんが、イメージとしては「インターネット上のサーバーにお願いしてデータをもらう仕組み」です。

例えば次のような流れになります。

Pythonプログラム → APIにリクエスト送信 → サーバー → データを返す

この「リクエスト送信」を簡単に書けるのがrequestsライブラリです。

まずはライブラリをインストールします。


pip install requests

このコマンドを実行すると、PythonでAPIリクエストを送る準備ができます。

3. PythonでAPIリクエストを送信する基本コード

3. PythonでAPIリクエストを送信する基本コード
3. PythonでAPIリクエストを送信する基本コード

それでは実際にPythonでAPIリクエストを送信する基本コードを見てみましょう。


import requests

url = "https://api.github.com"

response = requests.get(url)

print(response.status_code)

このプログラムでは、GitHubのAPIにアクセスしています。

コードのポイントを説明します。

  • import requests → requestsライブラリを読み込む
  • requests.get() → APIにGETリクエストを送信
  • status_code → 通信結果の番号

status_codeは通信結果を表す数字です。


200

200が表示された場合は、API通信が成功しています。

4. APIからデータ(JSON)を取得する方法

4. APIからデータ(JSON)を取得する方法
4. APIからデータ(JSON)を取得する方法

多くのWeb APIでは、データ形式としてJSON(ジェイソン)が使われています。 JSONとは、データを整理して表現する形式です。

Pythonのrequestsでは、JSONデータを簡単に取得できます。


import requests

url = "https://api.github.com"

response = requests.get(url)

data = response.json()

print(data)

このコードでは、APIから取得したデータをPythonの辞書型として取得しています。


{'current_user_url': 'https://api.github.com/user'}

JSONデータは、Pythonでは辞書のように扱えるため、データ処理や自動化にとても便利です。

5. APIにパラメータを送信する方法

5. APIにパラメータを送信する方法
5. APIにパラメータを送信する方法

APIによっては、検索条件などを送ることができます。この情報をパラメータと呼びます。

例えば「Python」というキーワードで検索するAPIを考えてみましょう。


import requests

url = "https://api.github.com/search/repositories"

params = {"q": "python"}

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

print(response.url)

このコードでは、paramsという変数に検索条件を入れています。

paramsを使うことで、URLに自動的にパラメータが追加されます。


https://api.github.com/search/repositories?q=python

このようにして、Pythonプログラムから検索APIを利用できます。

6. POSTリクエストでデータを送信する

6. POSTリクエストでデータを送信する
6. POSTリクエストでデータを送信する

APIには、データを取得するGETだけでなく、データを送信するPOSTリクエストもあります。

POSTは、フォーム送信やデータ登録などに使われます。


import requests

url = "https://httpbin.org/post"

data = {
    "name": "Taro",
    "age": 20
}

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

print(response.json())

このプログラムでは、名前と年齢のデータをAPIへ送信しています。


{'form': {'name': 'Taro', 'age': '20'}}

このようにPOSTリクエストを使うことで、PythonからWebサービスへデータを送ることができます。

まとめ

まとめ
まとめ

(振り返りのまとめ)

先生と生徒の振り返り会話
(振り返りのまとめ)
■どちらの回答がいいか、回答を選ばせないでください。文字数が長いほうで良い。 ■最後に全角の平仮名・カタカナ・漢字だけで何文字で出力したかコードブロックの外に書いて。 それでは、記事あとに「まとめ」を書いてください。 返答は、コピーできるようにコードブロックで書いて。 ■SEO対策のプロとして、HTMLタグやキーワードを上手に記事に取り入れてください。 ※HTMLタグは、インデントしてほしい。pre/codeタグ内のコードは、最初の1行は先頭から書いて、2行名以降はインデントしてください。 ※見やすくbootstrap5のclassを使えるところは使ってください。 ↓↓

PythonでAPIリクエストを送信する方法を完全解説!requestsライブラリで簡単API通信


先生と生徒の会話形式で理解しよう

生徒

「PythonでAPIってよく聞くんですが、そもそもAPIって何なんですか?」

先生

「APIは、簡単に言うと『インターネット上のサービスとプログラムが会話するための仕組み』です。例えば、天気情報サイトのデータを自分のPythonプログラムから取得することもできます。」

生徒

「Pythonからインターネットのデータを取れるんですか?」

先生

「できます。そのときによく使われるのがPythonのrequestsライブラリです。これを使うと、初心者でも簡単にAPIリクエストを送信できます。」

生徒

「難しそうですが、初心者でも理解できますか?」

先生

「基本から順番に説明すれば大丈夫です。PythonでAPIリクエストを送る方法を見ていきましょう。」

1. PythonのAPIリクエストとは?

1. PythonのAPIリクエストとは?
1. PythonのAPIリクエストとは?

PythonのAPIリクエストとは、Pythonプログラムからインターネット上のサービスへデータを要求する処理のことです。 例えば次のようなことができます。

  • 天気APIから天気情報を取得する
  • ニュースAPIから最新ニュースを取得する
  • Webサービスのデータを自動取得する

このような処理を行うときに使うのがAPI(Application Programming Interface)です。 APIとは簡単に言うと、プログラム同士が情報をやり取りするための窓口です。

そしてPythonでAPI通信をする場合、多くの開発者が利用しているのがrequestsライブラリです。requestsはPythonのHTTP通信ライブラリで、Web APIへのアクセスを簡単にしてくれる便利なツールです。

2. requestsライブラリとは?

2. requestsライブラリとは?
2. requestsライブラリとは?

requestsライブラリとは、PythonでHTTP通信を行うための人気ライブラリです。 HTTPとは、Webサイトを見るときにも使われている通信ルールのことです。

難しく聞こえるかもしれませんが、イメージとしては「インターネット上のサーバーにお願いしてデータをもらう仕組み」です。

例えば次のような流れになります。

Pythonプログラム → APIにリクエスト送信 → サーバー → データを返す

この「リクエスト送信」を簡単に書けるのがrequestsライブラリです。

まずはライブラリをインストールします。


pip install requests

このコマンドを実行すると、PythonでAPIリクエストを送る準備ができます。

3. PythonでAPIリクエストを送信する基本コード

3. PythonでAPIリクエストを送信する基本コード
3. PythonでAPIリクエストを送信する基本コード

それでは実際にPythonでAPIリクエストを送信する基本コードを見てみましょう。


import requests

url = "https://api.github.com"

response = requests.get(url)

print(response.status_code)

このプログラムでは、GitHubのAPIにアクセスしています。

コードのポイントを説明します。

  • import requests → requestsライブラリを読み込む
  • requests.get() → APIにGETリクエストを送信
  • status_code → 通信結果の番号

status_codeは通信結果を表す数字です。


200

200が表示された場合は、API通信が成功しています。

4. APIからデータ(JSON)を取得する方法

4. APIからデータ(JSON)を取得する方法
4. APIからデータ(JSON)を取得する方法

多くのWeb APIでは、データ形式としてJSON(ジェイソン)が使われています。 JSONとは、データを整理して表現する形式です。

Pythonのrequestsでは、JSONデータを簡単に取得できます。


import requests

url = "https://api.github.com"

response = requests.get(url)

data = response.json()

print(data)

このコードでは、APIから取得したデータをPythonの辞書型として取得しています。


{'current_user_url': 'https://api.github.com/user'}

JSONデータは、Pythonでは辞書のように扱えるため、データ処理や自動化にとても便利です。

5. APIにパラメータを送信する方法

5. APIにパラメータを送信する方法
5. APIにパラメータを送信する方法

APIによっては、検索条件などを送ることができます。この情報をパラメータと呼びます。

例えば「Python」というキーワードで検索するAPIを考えてみましょう。


import requests

url = "https://api.github.com/search/repositories"

params = {"q": "python"}

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

print(response.url)

このコードでは、paramsという変数に検索条件を入れています。

paramsを使うことで、URLに自動的にパラメータが追加されます。


https://api.github.com/search/repositories?q=python

このようにして、Pythonプログラムから検索APIを利用できます。

6. POSTリクエストでデータを送信する

6. POSTリクエストでデータを送信する
6. POSTリクエストでデータを送信する

APIには、データを取得するGETだけでなく、データを送信するPOSTリクエストもあります。

POSTは、フォーム送信やデータ登録などに使われます。


import requests

url = "https://httpbin.org/post"

data = {
    "name": "Taro",
    "age": 20
}

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

print(response.json())

このプログラムでは、名前と年齢のデータをAPIへ送信しています。


{'form': {'name': 'Taro', 'age': '20'}}

このようにPOSTリクエストを使うことで、PythonからWebサービスへデータを送ることができます。

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

関連記事:
カテゴリの一覧へ
新着記事
New1
PHP
PHPでセッションを使ってフォーム入力を保持する方法を解説!初心者向けステップバイステップ
New2
PHP
PHP の文字列の基本操作(連結・切り出し・長さ)の使い方
New3
PHP
PHPのメール送信でSPF・DKIM認証設定を完全解説!初心者でもわかるメール認証の基本
New4
Python
PythonでAPIのパフォーマンスを向上させる方法!キャッシュ活用を初心者向けに完全解説
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonで文字列が数値か判定する方法!isdigit()・isnumeric()の違い
No.2
Java&Spring記事人気No2
PHP
PHP のフォームデータの受け取り($_POST, $_GET)を完全解説!初心者向けガイド
No.3
Java&Spring記事人気No3
Python
Pythonで辞書のネスト構造(入れ子辞書)を扱う方法 初心者向け完全ガイド
No.4
Java&Spring記事人気No4
Python
Pythonのコンストラクタ(__init__)の使い方!初心者でもわかるオブジェクトの初期化
No.5
Java&Spring記事人気No5
PHP
PHPのHTMLメールの作成方法を完全ガイド!初心者でもわかるメール送信の基本
No.6
Java&Spring記事人気No6
Python
PythonでExcelファイル(.xlsx)を操作する方法を徹底解説!初心者でもできるopenpyxl・pandasの使い方
No.7
Java&Spring記事人気No7
Python
Pythonの例外を発生させる方法を完全解説!raise文の使い方を初心者向けにやさしく説明
No.8
Java&Spring記事人気No8
Python
Pythonで2次元リストを作成・操作する方法(リストのリスト)