Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用AWS lambda从S3存储桶读取csv文件,并将其作为新csv写入另一个S3存储桶?蟒蛇肉_Csv_Amazon S3_Aws Lambda_Boto3 - Fatal编程技术网

如何使用AWS lambda从S3存储桶读取csv文件,并将其作为新csv写入另一个S3存储桶?蟒蛇肉

如何使用AWS lambda从S3存储桶读取csv文件,并将其作为新csv写入另一个S3存储桶?蟒蛇肉,csv,amazon-s3,aws-lambda,boto3,Csv,Amazon S3,Aws Lambda,Boto3,好的,我是AWS的初学者。我正在编写一个lambda函数,根据S3中的文件上载事件触发,删除一些coulmn并将其写入一个新的bucket。在过去的两次数据中,我一直在绞尽脑汁,每次都会得到不同的错误。有人能修改我的代码/修复它吗?outputlv将是我的目标桶。。当前,我获取的“/outputlv/output.csv”路径在打开(“/outputlv/output.csv”、“w”)为输出的文件行中不存在。谢谢 import json import urllib.parse import b

好的,我是AWS的初学者。我正在编写一个lambda函数,根据S3中的文件上载事件触发,删除一些coulmn并将其写入一个新的bucket。在过去的两次数据中,我一直在绞尽脑汁,每次都会得到不同的错误。有人能修改我的代码/修复它吗?outputlv将是我的目标桶。。当前,我获取的“/outputlv/output.csv”路径在打开(“/outputlv/output.csv”、“w”)为输出的文件行中不存在。谢谢

import json
import urllib.parse
import boto3
import csv

s3 = boto3.client('s3')
def lambda_handler(event, context):
    bucket = event['Records'][0]['s3']['bucket']['name']

    
    key = urllib.parse.unquote_plus(event['Records'][0]['s3']['object']['key'], encoding='utf-8')
    file_name = s3.get_object(Bucket=bucket, Key=key)
    
    
    csv_reader = csv.reader(file_name)
        
        
    with open('/outputlv/output.csv', 'w') as output_file:
        wtr = csv.writer(output_file)
        for i in csv_reader:
            wtr.writerow(i[0], i[2], i[3])
            
    target_bucket = 'outputlv'
    final_file = 'outputlv/output.csv'
    
    s3.put_object(Bucket=target_bucket, Key=final_file)
        

你为什么不获取内容呢?是否需要使用本地文件

response=s3.get_对象(Bucket=Bucket,Key=Key)
#获取文件内容
内容=响应['Body'].read()
#将文件内容传递给csv阅读器
csv\u reader=csv.reader(内容)

发生了什么错误?非常感谢,我的代码中没有包含文件内容,这是所有错误的根本原因。