#amazon-web-services #amazon-s3 #boto3 #python-3.8
Вопрос:
Эта функция выводит список сегментов s3, а также их ключи объектов. Как заставить эту функцию печатать только список пустых ведер?
import boto3
s3 = boto3.resource('s3')
def empty_s3():
#This will print list of all buckets
print("nList of S3 buckets:")
for bucket in s3.buckets.all():
print(bucket.name)
#This will print s3 bucket object keys
for object in bucket.objects.all():
print(object)
Комментарии:
1. Что не так с текущим сценарием? Какие-нибудь ошибки?
2. В этом скрипте нет ошибок. Он печатает список ведер и их объектов, но мне нужно распечатать только список пустых ведер.
Ответ №1:
Вы можете просто проверить количество объектов:
import boto3
s3_resource = boto3.resource('s3')
for bucket in s3_resource.buckets.all():
objects = list(bucket.objects.all())
# Empty bucket?
if len(objects) == 0:
print(bucket.name)