可以通过以下步骤实现:
import boto3
import os
s3 = boto3.client('s3')
def read_s3_file(bucket_name, folder_name):
response = s3.list_objects_v2(Bucket=bucket_name, Prefix=folder_name)
for obj in response['Contents']:
file_name = obj['Key']
if file_name.endswith('.txt'): # 可以根据需要修改文件类型
obj = s3.get_object(Bucket=bucket_name, Key=file_name)
content = obj['Body'].read().decode('utf-8')
print(content)
bucket_name = 'your_bucket_name'
folder_name = 'your_folder_name'
read_s3_file(bucket_name, folder_name)
在上述代码中,我们首先使用list_objects_v2
方法列出指定存储桶和子文件夹下的所有对象。然后,我们遍历每个对象并检查文件名是否以.txt
结尾(可以根据需要修改文件类型)。如果是,则使用get_object
方法获取文件对象,并使用Body
属性读取文件内容。最后,我们将内容打印出来。
请注意,上述代码仅适用于读取S3存储桶中的文本文件。如果需要读取其他类型的文件,可以根据需要进行修改。
推荐的腾讯云相关产品:腾讯云对象存储(COS)
腾讯云对象存储(COS)是一种高可用、高可靠、安全、低成本的云端存储服务,适用于存储和处理大规模非结构化数据。它提供了简单易用的API接口,可以方便地与Python代码集成。
产品介绍链接地址:腾讯云对象存储(COS)
领取专属 10元无门槛券
手把手带您无忧上云