Python 演示如何使用boto3从S3存储桶中删除一个或多个特定密钥
这允许从S3存储桶中删除密钥列表。请举例说明如何将其用于:Python 演示如何使用boto3从S3存储桶中删除一个或多个特定密钥,python,amazon-web-services,amazon-s3,boto3,Python,Amazon Web Services,Amazon S3,Boto3,这允许从S3存储桶中删除密钥列表。请举例说明如何将其用于: 要删除的单个密钥 要删除的多个键的列表 谢谢 delete_objects(**kwargs) This operation enables you to delete multiple objects from a bucket using a single HTTP request. You may specify up to 1000 keys. Request Syntax response = bucket.delete
delete_objects(**kwargs)
This operation enables you to delete multiple objects from a bucket using a single HTTP request. You may specify up to 1000 keys.
Request Syntax
response = bucket.delete_objects(
Delete={
'Objects': [
{
'Key': 'string',
'VersionId': 'string'
},
],
'Quiet': True|False
},
MFA='string',
RequestPayer='requester'
)
删除一个对象:
response = bucket.delete_objects(
Delete={
'Objects': [
{
'Key': 'myObjectKey'
}
]
}
)
删除两个对象:
response = bucket.delete_objects(
Delete={
'Objects': [
{
'Key': 'myFirstObjectKey'
},
{
'Key': 'mySecondObjectKey'
}
]
}
)
我觉得文档(您链接的文档)使这一点非常明显。我很好奇您是如何发现这些文档令人困惑的。回答:
# Delete key(s)
forDeletion = [{'Key':'IMG_20160807_150118.jpg'}, {'Key':'IMG_20160807_150124.jpg'}]
response = bucket.delete_objects(Delete={'Objects': forDeletion})
for elem in response.get('Deleted'):
print(elem['Key'])
输出:
IMG_20160807_150118.jpg
IMG_20160807_150124.jpg
非常感谢你的解释,是你的暗示解决了这个问题。在术语上纠缠不清;键与s3 bucket键相同,但也与python字典中的键相同。键:value.;-)即使运行了上面的代码,并收到状态代码200,我仍然可以从s3下载该文件,因此它不起作用。这是我见过的最荒谬和可笑的API。这个图书馆怎么了?@Granitosaurus你的评论没有效果。如果你有改进Boto3的建议,我建议在这里提交