我有下面的代码,拉在所有的文件夹名称以及文件名从特定的S3桶。如何修改这一点,使它可以只读文件,以“.csv”结束,而不是所有的文件夹名称?
def lambda_handler(event, context):
s3_client = boto3.client("s3")
bucket_name = "dump"
response = s3_client.list_objects_v2(Bucket=bucket_name)
files = response.get("Contents")
for file in files:
print(f"file_name: {file['Key']}")
电流输出:
file_name: 2023/
file_name: 2023/Feb/
file_name: 2023/Feb/file1.csv
file_name: 2023/Jan/
file_name: 2023/Jan/file2.csv
file_name: 2023/Mar/
file_name: 2023/Mar/file3.csv
但是,我只想列出这些sv文件。所以我希望输出为:
file_name: 2023/Feb/file1.csv
file_name: 2023/Jan/file2.csv
file_name: 2023/Mar/file3.csv
怎么做?我试过用“endswith”,但是不管用。有什么帮助吗?
1条答案
按热度按时间hc8w905p1#
在这里,我更喜欢使用与客户端方法相比提供更高抽象级别的资源。