0

S3 Amazon バケットから最新の日付のファイルを取得するスクリプトを作成しようとしています。これは私が現在取り組んでいるコードです:

#!/usr/bin/env python

import boto
import boto.s3
from boto.s3.key import Key

# Define variables
AWS_ACCESS_KEY_ID = ''
AWS_SECRET_ACCESS_KEY = ''
BUCKET_NAME = 'My Bucket'
BUCKET = conn.get_bucket(bucket_name)
CONN = boto.connect_s3(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)

for key in bucket.list():
    print key.name

これをテストするためにまだ Amazon にサインアップする機会はありませんでしたが、インターネットでこのコードを見つけたので、バケット内のすべてのファイルがリストされているはずです。

私の各ファイルは、次の名前形式で日付が付けられています。

NOW = datetime.datetime.now().strftime("%Y-%m-%d__%H-%M")
Example: 1999-01-30__10-30 (10:30 on the 30th Jan 1999)

私の質問は、日付の付いたファイル名に基づいて最新のファイルを特定したい場合、これを行う良い方法は何ですか?

4

1 に答える 1

1

ファイル名を並べ替えるだけです。最新のファイルが最後のファイルになります。

>>> sorted(['1999-01-30__10-30', '2012-10-10__11-22', '2011-01-30__22-11'])
['1999-01-30__10-30', '2011-01-30__22-11', '2012-10-10__11-22']
于 2012-11-20T10:00:32.057 に答える