2

我想将 Amazon Ion 文件从 S3 存储桶转换为 JSON 格式。

我正在尝试以下代码

import json
import boto3


s3 = boto3.resource('s3')
bucket = s3.Bucket('some/path/')
ion_body = bucket.Object('xxxxxxxxxxxxxx.ion').get()['Body'].read().decode("utf-8")
json.loads(ion_body)

但我收到以下JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 3 (char 2)错误。因为在 Ion 文件中,键是不带引号声明的。

亚马逊 Ion文档说我们可以将 Ion 下转换为 Json。但我没有任何办法。请帮我。谢谢!

4

1 回答 1

1

您可以使用 pyion2json

import json
import boto3
from pyion2json import ion_to_json

s3 = boto3.resource('s3')
bucket = s3.Bucket('some/path/')
ion_body = bucket.Object('xxxxxxxxxxxxxx.ion').get()['Body'].read().decode("utf-8")
print(ion_to_json(ion_body))
于 2021-03-23T23:51:05.263 回答