python - 使用 boto3、Python 从 S3 存储桶查找最新的 CSV 文件

标签 python python-3.x pandas amazon-s3 boto3

我想从 S3 存储桶中查找最新的 .csv 文件,其中包含多种格式文件,例如 .json、.xlsx、.csv、.txt 文件。

Client = boto3.client('s3', aws_access_key_id=S3_AccessKey, aws_secret_access_key=S3_SecretKey)
Response = Client.list_objects_v2(Bucket=S3_BucketName, Prefix=PrefixPath)

Files_ListS = Response.get('Contents')

下面的脚本给出了来自S3的最新文件,我得到了一些.json文件(bcz最近更新),我想要在json文件之前更新的.csv文件,意味着来自csv文件的最新文件。

max(Files_ListS , key=lambda x: x['LastModified'])

最佳答案

您可以通过检查对象键是否以 .csv 结尾,使用列表理解仅过滤 CSV 文件:

csv_objects = [f for f in Files_ListS if f['Key'].endswith('.csv')]
max(csv_objects, key=lambda x: x['LastModified'])

关于python - 使用 boto3、Python 从 S3 存储桶查找最新的 CSV 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62918131/

相关文章:

python - 两个 DataFrame 的 SumProduct

python - 如何检查数据框中的所有值是否均为 True

带有外部函数的Python工厂方法

javascript - Bcrypt python 脚本和 JavaScript 与 MongoDB/Mongoose 不适用于两个单独的项目

python - 有没有办法使用 python 知道 chrome 进程来自 chromedriver?

python - Pandas 数据框 to_html : Highlighting table rows

python - 根据列表中每个元素的内容从列表中获取元素

python - Django Haystack - 无需搜索查询即可显示结果?

python :MYSQLdb。如何在不执行 select * 在大表中获取列名?

python-3.x - 使用Python文本搜索YouTube视频源代码