как я могу записать свои результаты из шага обработки файла с помощью AWS lambda и python обратно в файл?Я читаю файл из S3 и ищу специальные выражения в каждой строке.Если это выражение включено, я манипулирую строкой.Поскольку лямбда не может записать в файл (или S3 не позволяет этого), как можно собрать результат преобразования строки и записать всю преобразованную строку в файл?код выглядит следующим образом:
import boto3
import botocore
s3 = boto3.resource('s3')
s3 = boto3.client('s3')
def lambda_handler(event, context):
bucket = event['Records'][0]['s3']['bucket']['name']
key = event['Records'][0]['s3']['object']['key']
obj = s3.get_object(Bucket=bucket, Key=key)
for line in obj['Body'].read().decode('utf-8').splitlines():
if 'PCSI' in line:
newLine = line \
.replace('E','') \
.replace('--','') \
.replace('<',';') \
.replace('>','') \
.replace('9_PCSI','') \
.replace('[','') \
.replace('|',';') \
.replace(']',';') \
.replace(' ','')
, когда я печатаю результаты, он работает нормально и дает мне формат каждой строки, которую я хочу.
Одна идея, которую я имел, состояла в том, чтобы записать в файлв папке / tmp lambda:
newFile = open('/tmp/pcsi.txt','a')
и измените код, например
...
if 'PCSI' in line:
newFile.write(line \
.replace(.....
, но я не знаю, работает ли это, поскольку я не могу «увидеть» файл в/ TMP.Я также пытался загрузить его снова на S3.Есть ли способ записать каждую строку в файл и сохранить его на S3?