jsonをs3バケットのファイルに書き込む 質問する

jsonをs3バケットのファイルに書き込む 質問する

このコードはJSONをS3のファイルに書き込みます。私が実現したかったのは、data.jsonファイルを開いてS3(sample.json)ファイルに書き込む代わりに、

json を直接渡して s3 のファイルに書き込むにはどうすればいいですか?

import boto3

s3 = boto3.resource('s3', aws_access_key_id='aws_key', aws_secret_access_key='aws_sec_key')
s3.Object('mybucket', 'sample.json').put(Body=open('data.json', 'rb'))

ベストアンサー1

質問が正しいかどうかわかりません。Boto3 を使用して JSON データをファイルに書き込みたいだけですか? 次のコードは、Python 辞書を JSON ファイルに書き込みます。

import json
import boto3    
s3 = boto3.resource('s3')
s3object = s3.Object('your-bucket-name', 'your_file.json')

s3object.put(
    Body=(bytes(json.dumps(json_data).encode('UTF-8')))
)

おすすめ記事