Python-如何读取从S3存储桶检索到的CSV文件?

路易

我想解析S3存储桶中的一个CSV文件并将其转换为Python中的字典。使用Boto3,我调用了该s3.get_object(<bucket_name>, <key>)函数,函数返回了一个字典,该字典包含一个"Body" : StreamingBody()键值对,键值对显然包含我想要的数据。

在我的python文件中,添加import csv了我在网上看到的有关如何读取csv文件的示例,您传递了文件名,例如:

with open(<csv_file_name>, mode='r') as file:
reader = csv.reader(file)

但是,我什至不确定如何从StreamBody检索csv文件名。如果没有,是否有更好的方法让我在Python中读取csv文件?谢谢!

编辑:想补充一点,我正在AWS Lambda中执行此操作,并且在Lambda中使用熊猫存在一些已记录的问题,所以这就是为什么我想要使用csv库而不是pandas的原因。

亚伦·本特利

csv.reader不需要文件。它可以使用遍历行的任何内容,包括文件和列表。

因此,您不需要文件名。只需将response ['Body']中的行直接传递到阅读器即可。一种方法是

lines = response['Body'].read().splitlines(True)
reader = csv.reader(lines)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用python boto3将s3对象从一个存储桶复制到另一个存储桶

使用boto3,Python从S3存储桶中查找最新的CSV文件

Python使用Boto在同一S3存储桶中移动/复制文件

如何在Python中使用临时令牌从s3存储桶下载文件

如何使用Python在myBucket中上传CSV文件并在S3 AWS中读取文件

Python AWS Boto3:如何从S3存储桶读取文件?

Lambda Python boto3将文件存储在S3存储桶中

在Python中使用ARN iam将文件上传到Amazon s3存储桶

如何使用python不管文件密钥如何从S3存储桶下载所有文件

如何使用python上传文件到AWS-s3存储桶的不同区域下

AWS Lambda:使用Python从s3存储桶读取csv文件尺寸,而无需使用Pandas或CSV包

如何使用python(boto3)连接到带有pem文件的Amazon S3存储桶

Python:使用“ import csv”从S3存储桶读取CSV

使用Python在未经身份验证的公共S3存储桶上下载文件

在EC2上运行存储在AWS S3存储桶中的Python脚本并将结果文件保存回S3存储桶

使用python从S3存储桶下载后加载的pickle文件出现问题

如何使用python从S3存储桶中读取.txt文件并查看内容?

使用boto3和python从S3存储桶目录中仅读取特定格式的文件

如何通过python脚本在s3存储桶上创建文件夹?

尝试使用python2.7中的boto3模块从S3存储桶和S3存储桶获取CSV文件时出现无效的时间戳记错误

将文件上传到S3存储桶-Python Django

使用 python boto 仅下载 S3 存储桶中的特定文件夹

使用 boto3 和 python flask 将 CSV 文件上传到 S3 存储桶时出现错误 500

将 Python 中的大文件复制到 S3 存储桶时出现 OSError

如何使用 Python Boto3 获取 S3 存储桶的总数

在 Python (Boto3) 中打开 S3 存储桶中的 .docx 文件

Python:如何从 S3 存储桶下载文件

从 S3 存储桶中的 CSV 文件读取数据并将其存储在 python 中的字典中

如何使用 Python 从公共 AWS S3 存储桶中提取文件