Я пытаюсь прочитать файл Excel из одной корзины s3 и записать его в другую корзину, используя boto3 в aws lambda. Я предоставил s3 полный доступ к своей роли и написал следующий код
import boto3
import botocore
import io
def lambda_handler(event, context):
s3 = boto3.resource('s3')
s3.Bucket('<first_bucket>').download_file('<file_name>.xlsx', '/tmp/<file_name>.xlsx')
object = s3.Object('<first_bucket>','<file_name>.xlsx')
with open('/tmp/<file_name>', 'wb') as data:
object.download_fileobj(data)
target_object = s3.Object('<second_bucket>','<file_name>.xlsx')
target_object.put(data)
return 'Successfully written to new bucket'
Я выполнил этот код в Lambda, и когда я проверяю свое второе ведро, я вижу, что файл присутствует, но его размер равен 0. Я не уверен, почему и как это исправить. Есть указатели?