PythonでCOVID APIに接続してデータを取得する方法

スポンサーリンク

今回は、「PythonでAPIからデータを取得する方法」にフォーカスします。

それでは、さっそく始めましょう

スポンサーリンク

Python を使って API からデータを取得する手順

それでは、APIから特定のデータを引き出すために必要なステップに焦点を当ててみましょう。

APIやレスポンスステータスコードなどの詳細については、APIへの接続の記事を参照してください。

それでは始めましょう。

例1:オープンソースのCOVID APIからデータを取得する場合

この例では、オープンソースのCOVID APIに接続し、カスタマイズされた方法でjson情報を抽出し、パースします。

1. APIへの接続

まず、以下のようにAPIに接続し、安全な接続を行う必要があります。

今回は、COVID19-IndiaのAPIを使用して、州ごとの一覧から症例データを取得しました。

import requests
import json
response_API = requests.get('https://api.covid19india.org/state_district_wise.json')
#print(response_API.status_code)

API からデータを取得するため、get() 関数を使用して API から情報を取得しました。

2. APIからデータを取得する

APIとの健全な接続が完了したら、次のタスクはAPIからデータを取得することです。

以下のコードを見てください。

data = response_API.text

requests.get(api_path).text`は、前述のAPIからデータを取得するのに役立ちます。

3. データをJSON形式にパースする

データを抽出したら、次はそのデータを以下のような適切なJSON形式に変換してデコードします。

json.loads(data)

json.loads()関数は、データをJSON形式にパースします。

4. データを取り出して表示する

JSON形式は、データをPythonのdictに似たkey-value形式で格納しています。

したがって、以下のようにキーバリューを使ってデータを取り出して印刷することができます

parse_json['Andaman and Nicobar Islands']['districtData']['South Andaman']['active']

全コードは下記からどうぞ!

import requests
import json
response_API = requests.get('https://api.covid19india.org/state_district_wise.json')
#print(response_API.status_code)
data = response_API.text
parse_json = json.loads(data)
active_case = parse_json['Andaman and Nicobar Islands']['districtData']['South Andaman']['active']
print("Active cases in South Andaman:", active_case)

結果は以下の通りです。

Active cases in South Andaman: 19

例2:オープンソースのGMAIL APIからデータを取得する場合

では、GMAIL APIに接続し、データを取得してみましょう。

このAPIは、一般的な構造と、APIから取得できる情報を表しています。

それでは始めましょう。

以下のコードを見てください。

例えば、以下の様になります。

import requests
import json
response_API = requests.get('https://gmail.googleapis.com/$discovery/rest?version=v1')
#print(response_API.status_code)
data = response_API.text
parse_json = json.loads(data)
info = parse_json['description']
print("Info about API:
"
, info)
key = parse_json['parameters']['key']['description']
print("
Description about the key:
"
,key)

結果は以下の通りです。

Info about API:
 The Gmail API lets you view and manage Gmail mailbox data like threads, messages, and labels.
 
Description about the key:
 API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.

説明

  • 最初に、get()関数を用いて一般的なGMAIL APIに接続しました。
  • APIとの健全な接続が確立したら、 response_object.text を使ってAPIからデータを取得します。
  • ここで、 json.loads() 関数を用いてデータを JSON 形式にパースします。
  • 最後に、JSONオブジェクトから、APIの説明やキーの説明などのデータを抽出します。
  • サンプルに記載されているAPIリンクにアクセスすることで、値をクロスチェックすることができます。

まとめ

ここまでで、このトピックは終了です。

もし何か疑問があれば、お気軽にコメントください。

Pythonに関連するこのような投稿をもっと見るには、お楽しみに!それまでは、ハッピーラーニング!!。

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