0
0

ちゃちゃっとcosmosDBにアイテム追加する

Posted at

はじめに

同僚に「もうちょっと工夫がほしい」と言われてかっとなって作った。
かっとなって作ったけど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

実行結果

コマンド実行

image.png

cosmosDB上で確認

image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0