はじめに
同僚に「もうちょっと工夫がほしい」と言われてかっとなって作った。
かっとなって作ったけどGeminiの世話になったのは内緒だ
10分でできた。AI様様!
仕上がりはこちら
import argparse
import csv
import json
from azure.cosmos import CosmosClient
# パラメータの取得
parser = argparse.ArgumentParser(description="Cosmos DB にアイテムを追加するスクリプト")
parser.add_argument("-u", "--url", type=str, help="Cosmos DB アカウントURL")
parser.add_argument("-k", "--key", type=str, help="Cosmos DB アカウントキー")
parser.add_argument("-i", "--input", type=str, help="CSV ファイルパス")
args = parser.parse_args()
# Cosmos DB への接続
cosmos_url = args.url
cosmos_key = args.key
client = CosmosClient(cosmos_url, cosmos_key)
# データベースとコンテナの取得
database_name = "nabehiro_db"
container_name = "nabehiro_container"
database = client.get_database_client(database_name)
container = database.get_container_client(container_name)
# CSV ファイルの読み込み
with open(args.input, newline='') as csvfile:
reader = csv.DictReader(csvfile)
# アイテムの変換と追加
for row in reader:
item = {
"id": row["id"],
"AppKey": row["AppKey"],
"AppName": row["AppName"],
"AppId": row["AppId"],
"Division": row["Division"],
}
container.create_item(item)
print("アイテムの追加が完了しました。")
入力に使ったcsvファイル
テストなので適当に作ったやつ
id,AppKey,AppName,AppId,Division
id1,appkey1,appname1,appid1,division1
id2,appkey2,appname2,appid2,division2
id3,appkey3,appname3,appid3,division3