boto3 でオブジェクトを JSON に変換


boto3 (AWS SDK for Python) で、オブジェクトを JSON に変換する方法です。 json.dumps(response) だと、datetime 型に対応していません。

参考にしたページ
boto3 (AWS SDK for Python) メモ

Arch Linux で、bson のインストール

sudo pacman -S python-pymongo

Ubuntu 17.10 で、bson のインストール

sudo apt install python3-pymongo
boto3_json.py
#! /usr/bin/python
# -*- coding: utf-8 -*-
#
#   boto3_json.py
#
#                       Nov/24/2017
#
import sys
import json
import boto3
from bson import json_util
# --------------------------------------------------------------------
sys.stderr.write("*** 開始 ***\n")

client = boto3.client('ec2')
response = client.describe_instances()
print(type(response))

res_json = json.dumps(response, default=json_util.default)
print(type(res_json))

print(res_json)
sys.stderr.write("*** 終了 ***\n")
# --------------------------------------------------------------------

参考
Raspbian での boto3 のインストール

sudo pip3 install boto3