Python S3 JSONデータを保存|読込

Python S3 JSONデータを保存|読込

Python boto3を 使って プログラム中の変数などのデータを AWS S3へ 保存・読込をする コード例です。

S3へ JSONデータを 保存

import json
import boto3

test_json = {'name': '毛利', 'age': 10} #←S3に保存したいDict変数
s3 = boto3.Session(region_name=None).resource('s3')
obj = s3.Object("bucket名","folder名/test.json")

obj.put(Body = json.dumps(test_json, ensure_ascii=False)) #←変数をJSON変換し S3にPUTする

Dict型の 変数は、 json.dumps()でJSON文字列に変換しS3にputしています

json.dumps()の ensure_asciiは デフォルトTrueなのでFalseにします。 文字列に 非ASCII文字が含まれていれば、 戻り値に 非ASCII文字を含めることができます。

S3の JSONファイル を読込し Dict変数に変換

import json
import boto3

s3 = boto3.Session(region_name=None).resource('s3')
obj = s3.Object("bucket名","folder名/test.json") 
json_txt = obj.get()['Body'].read() #データを読み込む
item_dict = json.loads(json_txt) #JSON文字列をdictに変換
print(item_dict["name"])

get()するとResponseMetadataのオブジェクトで返ります

json.loads()を使えば JSON文字列を Dictに変換できます

2022 MJELD TECHNOLOGIES. ALL RIGHTS RESERVED