我需要每小时从s3服务器下载100个最新文件。s3- boto-通过上传时间在一个存储桶中列出文件
bucketList = bucket.list(PREFIX)
上面的代码创建了文件列表,但它不依赖于文件的上传时间,因为它按文件名列出?
我对文件名无能为力。它是随机给出的。
谢谢。
我需要每小时从s3服务器下载100个最新文件。s3- boto-通过上传时间在一个存储桶中列出文件
bucketList = bucket.list(PREFIX)
上面的代码创建了文件列表,但它不依赖于文件的上传时间,因为它按文件名列出?
我对文件名无能为力。它是随机给出的。
谢谢。
列表有多大?你可以在“LAST_MODIFIED” ATTR重点
orderedList = sorted(bucketList, key=lambda k: k.last_modified)
keysYouWant = orderedList[0:100]
如果您的名单是巨大的,这可能不是有效的列表进行排序。查看boto.s3.bucket.Bucket中list()函数的内联文档。
我对List Objects操作文档的阅读表明,对象总是按字母顺序(按对象键)列出。
如果您将每个对象的创建时间编码到对象键中,您可能可以实现您想要的功能。