【发布时间】:2020-05-29 21:55:40
【问题描述】:
就我而言,我想从我的 s3bucket/ 解析中读取所有 XML,然后将所有已解析的文件移动到同一个 s3Bucker/
对我来说,解析逻辑工作正常,但我无法移动所有文件。 这是我尝试使用的示例
**s3 = boto3.resource('s3')
src_bucket = s3.Bucket('bucket1')
dest_bucket = s3.Bucket('bucket2')
for obj in src_bucket.objects.all():
filename= obj.key.split('/')[-1]
dest_bucket.put_object(Key='sample/' + filename, Body=obj.get()["Body"].read())**
上面的代码根本不适合我(我必须为 s3 文件夹提供完全访问权限,并在给定公共完全访问权限的情况下进行测试)。
谢谢
【问题讨论】:
-
如果只是一次性的,您可以通过使用“aws s3 sync”命令来使用 aws-cli 而不是 lamdba
-
不,我的整个解析逻辑都在 lamda 内部,一旦在 IN 文件夹中更新 xml 并解析并将解析后的文件移动到 OUT 文件夹,它将触发。而且这不是一次性的事情,这将针对每一次和基于 Trigger 事件的 bouk 操作。
标签: aws-lambda boto3 awss3transfermanager