如果source_list中的某个项目存在于target_list中,则我试图从S3存储桶中删除s3对象。
source_list:
['ALH_LXN_RESPONSE_9.json',
'ALH_LXN_RESPONSE_10.json']
target_list:
['ALH-LXN-RESPONSE.json',
'ALH_LXN_RESPONSE_1.json',
'ALH_LXN_RESPONSE_2.json',
'ALH_LXN_RESPONSE_3.json',
'ALH_LXN_RESPONSE_4.json',
'ALH_LXN_RESPONSE_5.json',
'ALH_LXN_RESPONSE_6.json',
'ALH_LXN_RESPONSE_7.json',
'ALH_LXN_RESPONSE_8.json',
'ALH_LXN_RESPONSE_9.json',
'ALH_LXN_RESPONSE_10.json']
在这种情况下,我需要删除“ ALH_LXN_RESPONSE_9.json”, “ ALH_LXN_RESPONSE_10.json”。
s3_resource = session.resource('s3')
my_bucket = s3_resource.Bucket("dw-duwr-84829492409")
答案 0 :(得分:0)
尝试此示例代码
def delete_objects_from_S3():
source_list = ['ALH_LXN_RESPONSE_9.json', 'ALH_LXN_RESPONSE_10.json']
target_list = ['ALH-LXN-RESPONSE.json', 'ALH_LXN_RESPONSE_1.json', 'ALH_LXN_RESPONSE_2.json',
'ALH_LXN_RESPONSE_3.json', 'ALH_LXN_RESPONSE_9.json', 'ALH_LXN_RESPONSE_10.json']
commonObjects = [e for e in source_list if e in '\n'.join(target_list)]
s3 = boto3.resource('s3')
for item in commonObjects:
s3.Object('your_bucketName', item).delete()