PythonでAPIインターフェイスをラップする方法

Python では API インターフェースのカプセル化にクラスまたは関数が使えます。

  1. クラスラッパー API インターフェイスを使用する
import requests

class APIWrapper:
    def __init__(self, base_url):
        self.base_url = base_url

    def get_data(self, endpoint, params=None):
        url = self.base_url + endpoint
        response = requests.get(url, params=params)
        return response.json()

    def post_data(self, endpoint, data=None):
        url = self.base_url + endpoint
        response = requests.post(url, json=data)
        return response.json()

# 使用示例
api = APIWrapper('https://api.example.com')
data = api.get_data('/users')
print(data)
  1. 関数でAPIインターフェースをカプセル化します。
import requests

def get_data(base_url, endpoint, params=None):
    url = base_url + endpoint
    response = requests.get(url, params=params)
    return response.json()

def post_data(base_url, endpoint, data=None):
    url = base_url + endpoint
    response = requests.post(url, json=data)
    return response.json()

# 使用示例
base_url = 'https://api.example.com'
data = get_data(base_url, '/users')
print(data)

どちらを採用するかは、用途またプロジェクトの構成によって異なります。

bannerAds