s3- boto- список файлов внутри корзины по времени загрузки - PullRequest
4 голосов
/ 01 ноября 2011

Мне нужно каждый час скачивать 100 новых файлов с сервера s3.

bucketList = bucket.list(PREFIX)

Приведенный выше код создает список файлов, но он не зависит от времени загрузки файлов, поскольку он перечисляет по имени файла?

Я ничего не могу сделать с именем файла. Дается случайным образом.

Спасибо.

Ответы [ 2 ]

10 голосов
/ 08 мая 2012

Насколько велик список? Вы можете отсортировать список по атрибуту last_modified ключа

orderedList = sorted(bucketList, key=lambda k: k.last_modified)
keysYouWant = orderedList[0:100]

Если ваш список ОГРОМНЫЙ, это может быть неэффективно. Проверьте встроенные документы для функции list () в boto.s3.bucket.Bucket.

2 голосов
/ 02 ноября 2011

Мое чтение Список объектов Документация по эксплуатации предполагает, что объекты всегда перечислены в алфавитном порядке (по ключу объекта).

Если вы кодируете время создания каждого объекта в объектеключ, вы можете достичь того, что вы хотите.

...