Boto - 从S3获取最新信息

时间:2012-12-07 21:40:05

标签: python amazon-s3 amazon-web-services boto

我有点深入了解。我想在S3上存储备份,然后在下载S3存储桶的特定“文件夹”中最新修改的文​​件时尝试下载脚本。

我到目前为止:

import boto
s3conn = boto.connect_s3()
bucket = s3conn.lookup('my_bucket_name')
for key in bucket:
  print k.name, k.last_modified

key.getfile()

到目前为止,这是为了获取存储桶中每个文件的名称和最后修改。这是我真的陷入困境的地方,因为我需要获得最新版本,然后下载它,这就是我被卡住的地方。

有人能提供帮助吗?

1 个答案:

答案 0 :(得分:1)

您需要按last_modifed对键列表进行排序,然后列表的最后一项将是您想要的文件。像这样:

key_list = bucket.list()
key_list.sort(cmp = lambda x, y:
    cmp(x.last_modified, y.last_modified))
key_list[-1].get_file(destination_fp)

这是另一种排序方法,您可以尝试:

key_list.sort(key=lambda x: x.last_modified)