समस्या विवरण
Python में boto3 लाइब्रेरी का उपयोग करके AWS में मौजूद सभी बकेट की सूची प्राप्त करें।
उदाहरण - BUCKET_1, BUCKET2, BUCKET_3 जैसे बकेट के नाम प्राप्त करें।
इस समस्या को हल करने का दृष्टिकोण/एल्गोरिदम
चरण 1 - अपवादों को संभालने के लिए boto3 और botocore अपवाद आयात करें।
चरण 2 - Boto3 लाइब्रेरी का उपयोग करके AWS सत्र बनाएं।
चरण 3 - S3 के लिए AWS रिसोर्स बनाएं।
चरण 4 - buckets.all() फ़ंक्शन का उपयोग करके बकेट नाम सूचीबद्ध करें।
चरण 5 - यदि कोई अवांछित अपवाद होता है तो उसे संभालें।
चरण 6 - buckets_name की सूची लौटाएं।
उदाहरण
S3 में मौजूद बकेट की सूची प्राप्त करने के लिए निम्न कोड -
import boto3
from botocore.exceptions import ClientError
# S3 रिसोर्स का उपयोग करके AWS में मौजूद बकेट की सूची प्राप्त करें
def get_buckets_resource():
session = boto3.session.Session()
# उपयोगकर्ता कस्टमाइज़्ड एक्सेस कुंजी, सीक्रेट कुंजी और टोकन भी पास कर सकता है
s3_resource = session.resource('s3')
try:
buckets = list(s3_resource.buckets.all())
print("Got buckets using resource:", buckets)
except ClientError:
print("Couldn't get buckets.")
raise
else:
return buckets
get_buckets_resource()
आउटपुट
Got buckets using resource:[s3.Bucket(name='BUCKET_1'), s3.Bucket(name='BUCKET_2'), s3.Bucket(name='BUCKET_3')………. ]