[英]Python read files from s3 bucket
我想将 .csv 和 text.txt 文件作为我的函数的两个输入读取,而不显式传递文件名,因为我将有多个 csv 和文本并喜欢循环它们。下面是我的代码用过的
s3 = boto3.resource('s3')
bucket = s3.Bucket('textractpipelinestack-documentsbucket9ec9deb9-1rm7fo8ds7m69')
for obj in bucket.objects.all():
key = obj.key
body = obj.get()['Body'].read()
print(key)
打印(键)给了我文件的名称,但我不知道如何读取它们以便将它们作为输入传递。 csv”和“text.txt”。有人可以帮忙吗?..
以下内容将从 S3 存储桶中的任何 csv 或 txt 文件中读取文件内容。 您可以构建逻辑来捕获我创建打印语句的输入数据。
file_list = [f for f in bucket.objects.all() if f.key[-3:] == 'csv' or f.key[-3:] == 'txt']
for file in file_list:
print(file.get()['Body'].read().decode(encoding="utf-8", errors="ignore"))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.