Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cách lấy danh sách các bucket có trong AWS S3 bằng thư viện Boto3


Đề bài – Sử dụng thư viện boto3 trong Python để lấy danh sách tất cả các bucket có trong AWS.

Ví dụ – Lấy tên các bucket như – BUCKET_1, BUCKET2, BUCKET_3.

Phương pháp/Thuật toán giải quyết

Bước 1 – Import boto3 và các ngoại lệ từ botocore để xử lý lỗi.

Bước 2 – Tạo phiên AWS (session) bằng thư viện Boto3.

Bước 3 – Tạo resource AWS cho S3.

Bước 4 – Sử dụng hàm buckets.all() để liệt kê tên các bucket.

Bước 5 – Xử lý bất kỳ ngoại lệ không mong muốn nào, nếu xảy ra.

Bước 6 – Trả về danh sách buckets_name.

Ví dụ

Mã sau lấy danh sách các bucket có trong S3:

import boto3
from botocore.exceptions import ClientError

# Lấy danh sách bucket có trong AWS sử dụng S3 resource
def get_buckets_resource():
    session = boto3.session.Session()
    # Người dùng có thể truyền access key, secret_key và token tùy chỉnh
    s3_resource = session.resource('s3')
    try:
        buckets = list(s3_resource.buckets.all())
        print("Lấy buckets bằng resource:", buckets)
    except ClientError:
        print("Không thể lấy buckets.")
        raise
    else:
        return buckets

get_buckets_resource()

Kết quả

Lấy buckets bằng resource:[s3.Bucket(name='BUCKET_1'), s3.Bucket(name='BUCKET_2'), s3.Bucket(name='BUCKET_3'… ]