🩺
【Python】FastAPI MariaDBに接続し、テキストで出力
Python強化期間
Pythonの仮想環境に入る
python3 -m venv venv
FastAPIインストール
pip install fastapi
dotenvインストール
pip install python-dotenv
mysqlclientインストール
pip install mysqlclient
uvicorn インストール
pip install uvicorn
.env
HOST = '127.0.0.1'
DATABASE = 'test_db'
USER_AA = 'root'
PASSWORD = '0123'
test_maria.py
from fastapi import FastAPI
import mysql.connector
from dotenv import load_dotenv
import sys
import os
data = [
{'id': 't001', 'name': 'apple', 'mean': 'りんご'},
{'id': 't002', 'name': 'orange', 'mean': 'オレンジ'},
{'id': 't003', 'name': 'banana', 'mean': 'バナナ'},
{'id': 't004', 'name': 'strawberry', 'mean': 'いちご'}
]
def get_data_proc(sql_str):
sys.stderr.write(sql_str + "\n")
conn = mysql.connector.connect(user=user_aa, password=password_aa,
host=host_aa,database=data_base)
cursor = conn.cursor(dictionary=True)
cursor.execute(sql_str)
rows = cursor.fetchall ()
cursor.close()
conn.close()
return rows
dotenv_path = '.env'
pip install uvicornload_dotenv(dotenv_path)
host_aa=os.environ.get("HOST")
data_base=os.environ.get("DATABASE")
user_aa=os.environ.get("USER_AA")
password_aa=os.environ.get("PASSWORD")
#
app = FastAPI()
@app.get("/")
def say_hello():
return {"Hello": "World"}
@app.get("/data_fruit/")
def read_all():
return data
下記で実行
uvicorn test_maria:app --reload
Discussion