近年、API(アプリケーションプログラミングインタフェース)の重要性が高まっており、様々なアプリケーションやサービスがAPIを通じて連携しています。
この記事では、Pythonを使用してAPIを作成する方法をステップバイステップで解説します。
必要なライブラリのインストール
PythonでAPIを作成する最も一般的なフレームワークの一つにFlaskがあります。
まずはこのフレームワークをインストールしましょう。
pip install flask
Flaskアプリケーションのセットアップ
次に簡単なFlaskアプリケーションを作成します。
以下のようにコードを記述してください。
from flask import Flask, jsonify, request
app = Flask(__name__)
@app.route('/api/hello', methods=['GET'])
def hello_world():
return jsonify(message="Hello, World!")
if __name__ == '__main__':
app.run(debug=True)
このコードは簡単な「Hello, World!」エンドポイントを提供するAPIを作成します。
APIエンドポイントの追加
次に複数のエンドポイントを追加してみましょう。
例えば、データを取得したり、投稿したりするためのエンドポイントを追加します。
@app.route('/api/data', methods=['GET'])
def get_data():
data = {
"name": "John Doe",
"age": 28
}
return jsonify(data)
@app.route('/api/data', methods=['POST'])
def create_data():
new_data = request.json
# データの作成処理をここに追加
return jsonify(new_data), 201
これで、GETとPOSTのリクエストに対応するAPIが完成しました。
データベースの統合
APIは通常、データベースと連携してデータの永続化を行います。
Flaskと一緒に使用できるORM(Object-Relational Mapping)ライブラリの一つにSQLAlchemyがあります。
まず、SQLAlchemyをインストールします。
pip install flask-sqlalchemy
次に、データベース接続を設定し、データモデルを作成します。
from flask_sqlalchemy import SQLAlchemy
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///test.db'
db = SQLAlchemy(app)
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), nullable=False)
age = db.Column(db.Integer, nullable=False)
@app.route('/api/users', methods=['POST'])
def create_user():
data = request.json
new_user = User(name=data['name'], age=data['age'])
db.session.add(new_user)
db.session.commit()
return jsonify({'id': new_user.id}), 201
これで、データベースと連携したAPIが完成しました。
まとめ
本記事では、Pythonを使用して基本的なAPIを作成する手順を紹介しました。
Flaskフレームワークを使用することで、簡単にAPIを構築できることがおわかりいただけたと思います。
さらに、SQLAlchemyを使用することで、データベースとの連携も簡単に行えます。
ぜひ、この記事を参考にしてご自身のプロジェクトでAPIを作成してみてください。
最後までお読みいただき、ありがとうございました。