我需要从s3服务器每小时下载100个最新文件。
bucketList = bucket.list(PREFIX)
上面的代码会创建文件列表,但它不依赖于文件的上传时间,因为它按文件名列出?
我对文件名无能为力。它随机给出。
感谢。
答案 0 :(得分:9)
名单有多大?您可以在密钥的“last_modified”attr上对列表进行排序
orderedList = sorted(bucketList, key=lambda k: k.last_modified)
keysYouWant = orderedList[0:100]
如果您的列表是巨大的,这可能效率不高。查看boto.s3.bucket.Bucket中list()函数的内联文档。
答案 1 :(得分:2)
我阅读List Objects操作文档,建议对象始终按字母顺序列出(按对象键)。
如果将每个对象的创建时间编码到对象键中,您可以实现所需的目标。