Cant parse boto3 client json response using python
我是Python语言的新手。 我需要使用Boto 3和Python获取所有Amazon-Web-Services身份和访问管理(Amazon-IAM)策略详细信息。
我试图解析Boto 3客户端的JSON输出,还需要将
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | { 'ResponseMetadata': { 'HTTPStatusCode': 200, 'HTTPHeaders': { 'vary': 'Accept-Encoding', 'content-length': '19143', 'content-type': 'text/xml', 'date': 'Thu, 23 Feb 2017 06:39:25 GMT' } }, u 'Books': [ { u 'PolicyName': 'book1', u 'Arn': '002dfgdfgdfgdfgvdfxgdfgdfgdfgfdg', u 'CreateDate': datetime.datetime(2017, 2, 22, 13, 10, 55, tzinfo = tzutc()), u 'UpdateDate': datetime.datetime(2017, 2, 22, 13, 10, 55, tzinfo = tzutc()) }, { u 'PolicyName': 'book2',' u 'Arn': '002dfgdfgdfgdfgvdfxgdfgdfgdfgfdg', u 'CreateDate': datetime.datetime(2017, 2, 22, 13, 10, 55, tzinfo = tzutc()), u 'UpdateDate': datetime.datetime(2017, 2, 22, 13, 10, 55, tzinfo = tzutc()) }] } |
我有以下代码
1 2 3 4 5 6 7 8 9 10 11 | iampolicylist_response = iamClient.list_policies( Scope='Local', MaxItems=150 ) print iampolicylist_response res=json.dumps(iampolicylist_response) print res ret={} for i in res["PolicyName"]: ret[i["PolicyName"]]=i["Arn"] return ret |
使用
TypeError: expected string or buffer
使用
TypeError: datetime.datetime(2017, 2, 22, 13, 10, 55, tzinfo=tzutc()) is not JSON serializable
什么是实际问题?
结果
您不需要解析它。
请参阅http://boto3.readthedocs.io/en/latest/reference/services/iam.html#IAM.Client.list_policies
响应是字典对象
删除