【初心者向け】PythonでAPIを叩く方法!使い方と実践例を解説

【初心者向け】PythonでAPIを叩く方法!使い方と実践例を解説 python

PythonでAPIを使えるようになると、天気情報やニュース、株価などの外部データを簡単に取得できます。この記事では、初心者にもわかりやすく、APIの基礎からコード例、応用テクニック、エラー対策までを解説します。

PythonでAPIを叩くとは?基礎知識

まず、「APIを叩く」とは外部サービスにデータを要求し、その返答を受け取ることです。例えば、天気予報APIにアクセスすると、現在の天気をJSON形式で取得できます。

次に、APIには大きく分けて「GETリクエスト(データ取得)」と「POSTリクエスト(データ送信)」があります。Pythonでは、これらを簡単に扱えるrequestsライブラリがよく使われます。

APIを使うための準備

Python環境の準備

まずはPythonをインストールしましょう。公式サイトやAnacondaを使えば、簡単にセットアップできます。

requestsライブラリのインストール

続いて、API操作に便利なrequestsライブラリをインストールします。以下のコマンドを実行してください。

pip install requests

PythonでAPIを叩く基本コード例

GETリクエスト

import requests

url = "https://api.example.com/data"
response = requests.get(url)
print(response.status_code)  # ステータスコード
print(response.json())       # JSONデータを表示

このコードでは、指定URLにGETリクエストを送り、返ってきたデータを表示します。

POSTリクエスト

import requests

url = "https://api.example.com/create"
payload = {"name": "John", "age": 30}
response = requests.post(url, json=payload)
print(response.json())

POSTではデータを送信できます。これにより、サーバー側で新しいデータを作成できます。

実践例:天気予報API

例えば、OpenWeatherMap APIを使えば、都市名から天気を取得できます(要APIキー)。

import requests

API_KEY = "あなたのAPIキー"
city = "Tokyo"
url = f"http://api.openweathermap.org/data/2.5/weather?q={city}&appid={API_KEY}&lang=ja&units=metric"

response = requests.get(url)
data = response.json()

print(f"{city}の天気: {data['weather'][0]['description']}")
print(f"気温: {data['main']['temp']}℃")

このように、短いコードでリアルタイムの天気情報が取得できます。

応用テクニック

認証付きAPI

多くのAPIはAPIキーやOAuth認証が必要です。その場合は、リクエストヘッダーに追加します。

headers = {"Authorization": "Bearer あなたのAPIキー"}
response = requests.get(url, headers=headers)

JSONデータの扱い

レスポンスは辞書型として扱えるため、キーを指定すれば必要な情報だけ取得できます。

エラー処理

try:
    response = requests.get(url)
    response.raise_for_status()
    data = response.json()
except requests.exceptions.RequestException as e:
    print(f"エラー: {e}")

よくあるエラーと対策

  • 401 Unauthorized: APIキーが間違っているか未設定
  • 404 Not Found: URLやエンドポイントが間違っている
  • 429 Too Many Requests: リクエスト制限を超えた

まずはstatus_codeを確認し、HTTPステータスコードの解説で原因を調べましょう。

まとめ

PythonでAPIを扱えるようになれば、データ活用や自動化の幅が大きく広がります。まずは基本から始め、少しずつ応用へ進みましょう。

さらに理解を深めたい方は、Pythonのlistの使い方を学ぶと、配列処理に役立ちます。またfor文やwhile文の基礎も合わせて読むと理解が一気に広がります。

コメント

タイトルとURLをコピーしました