Скрипт Boto3 для запроса даты файла корзины S3 идет медленно - PullRequest
0 голосов
/ 25 октября 2018

Я написал простой скрипт для поиска последнего файла в корзинах S3.Это работает правильно, но очень медленно.Очевидно, у него есть много файлов для проверки, но если я использую что-то вроде S3 Browser , информация о файле появляется почти сразу.Я сделал что-то не так или это просто ограничение bobo3 ?

#! /usr/bin/python3

import argparse
import boto3
from datetime import datetime
from datetime import timezone

def build_argparser():
    parser = argparse.ArgumentParser(description='List S3 buckets by file date.')
    parser.add_argument('-p', '--profile', help='Profile to use')
    return parser

if __name__ == "__main__":
    parser = build_argparser()
    args = parser.parse_args()

    if args.profile == None:
        s3 = boto3.resource('s3')
    else:
        profile = boto3.session.Session(profile_name=args.profile)
        s3 = profile.resource('s3')

    for bucket in s3.buckets.all():
        print(bucket.name)
        latest_key = ""
        latest_datetime = datetime
        for object in bucket.objects.all():
            #print('\t' + str(object.key) + ': ' + str(object.last_modified))
            if latest_datetime == datetime or latest_datetime < object.last_modified:
                latest_key = object.key
                latest_datetime = object.last_modified

        print('\t' + str(latest_key) + ': ' + str(latest_datetime))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...