0

我的目标是将调用亚马逊产品广告 API 得到的响应写入 JSON 格式的文件。

我使用调用 API

response = default_api.search_items(search_items_request)

我尝试使用以下方法将结果写入文件:

with open('data.json', 'w') as f:
            json.dump(response, f)

我收到错误消息:

TypeError : Object of type 'SearchItemsResponse' is not JSON serializable

我怎样才能解决这个问题?我需要用 JSON 编写响应。非常感谢一个解决方案。

4

1 回答 1

0

json 只知道标准数据类型——int、float、list、string、dictionary 等。

如果要使用 json 保存任意类对象,则必须编写一个自定义转储例程,将对象分解为这些基本类型,以及一个自定义加载例程,读取这些基本类型并重建对象。

如果可以的话,使用 pickle 可能会容易得多,它确实支持保存任意类对象。

于 2020-09-10T20:42:03.363 回答