কম্পিউটার

AWS রিসোর্সে উপস্থিত S3 থেকে অবজেক্টের সমস্ত সংস্করণের তালিকা কীভাবে পাবেন


এই নিবন্ধে, আমরা দেখব কিভাবে S3 থেকে অবজেক্টের সমস্ত সংস্করণের তালিকা পাওয়া যায় যেগুলি AWS রিসোর্সে উপস্থিত রয়েছে৷

উদাহরণ

test.zip-এর সমস্ত সংস্করণ তালিকাভুক্ত করুন Bucket_1/testfolder থেকে S3 এর।

সমস্যা বিবৃতি: boto3 ব্যবহার করুন S3 থেকে বস্তুর সমস্ত সংস্করণের তালিকা পেতে পাইথনে লাইব্রেরি।

এই সমস্যা সমাধানের জন্য পদ্ধতি/অ্যালগরিদম

  • ধাপ 1: boto3 আমদানি করুন৷ এবং বোটোকোর ব্যতিক্রমগুলি পরিচালনা করার জন্য ব্যতিক্রম৷

  • ধাপ 2: bucket_name হল প্রয়োজনীয় প্যারামিটার।

  • ধাপ 3: boto3 lib ব্যবহার করে একটি AWS সেশন তৈরি করুন

  • পদক্ষেপ 4: s3

    এর জন্য একটি AWS ক্লায়েন্ট তৈরি করুন
  • ধাপ 5: এখন, list_object_versions ফাংশন ব্যবহার করে প্রদত্ত বাকেটের অবজেক্টের সমস্ত সংস্করণ তালিকাভুক্ত করুন এবং ব্যতিক্রমগুলি পরিচালনা করুন, যদি থাকে।

  • ধাপ 6: উপরের ফাংশনের ফলাফল হল একটি অভিধান এবং এতে প্রদত্ত বালতিতে বস্তুর সমস্ত সংস্করণ রয়েছে৷

  • পদক্ষেপ 7: বস্তুর সমস্ত সংস্করণের তালিকা ফেরত দিন।

উদাহরণ কোড

AWS S3 -

থেকে অবজেক্টের সমস্ত সংস্করণের তালিকা পেতে নিম্নলিখিত কোডটি ব্যবহার করুন
import boto3
from botocore.exceptions import ClientError

def list_all_objects_version(bucket_name, prefix_name):  
   session = boto3.session.Session()
   s3_client = session.client('s3')
   try:
      result = s3_client.list_object_versions(Bucket=bucket_name, Prefix=prefix_name)
   except ClientError as e:
      raise Exception("boto3 client error in list_all_objects_version function: " + e.__str__())
   except Exception as e:
      raise Exception("Unexpected error in list_all_objects_version function of s3 helper: " + e.__str__())
print(list_all_objects_version("Bucket_1","testfolder"))

আউটপুট

{'ResponseMetadata': {'RequestId': 'H4VAGM3YP6', 'HostId': ***********', 'HTTPStatusCode': 200, 'HTTPHeaders': {'x-amz-id-2': ***************', 'x-amz-request-id': 'H4VAGM3YP6', 'date': 'Sat, 03 Apr 2021 08:04:08 GMT', 'content-type': 'application/xml', 'transfer-encoding': 'chunked', 'server': 'AmazonS3'}, 'RetryAttempts': 0}, 'IsTruncated': False, 'KeyMarker': '', 'VersionIdMarker': '',
'Versions': [{'ETag': '"705e2e674b04ca71"', 'Size': 1773, 'StorageClass': 'STANDARD', 'Key': 'testfolder/test.zip', 'VersionId': 'null', 'IsLatest': True, 'LastModified': datetime.datetime(2020, 12, 18, 14, 13, 18, tzinfo=tzutc()), 'Owner': {'DisplayName': 'AWS.Development', 'ID': '928*******************************'}}], 'Name': 'Bucket_1', 'Prefix': 'testfolder', 'MaxKeys': 1000, 'EncodingType': 'url'}

  1. কিভাবে জাভা ব্যবহার করে সমস্ত MongoDB ডাটাবেসের তালিকা পেতে হয়?

  2. কিভাবে matplotlib মধ্যে কনট্যুর থেকে স্থানাঙ্ক পেতে?

  3. পাইথন - কিভাবে একটি স্ট্রিং থেকে সমস্ত সংখ্যা বের করতে হয়

  4. কিভাবে Matplotlib একটি প্লট থেকে সব কিংবদন্তি পেতে?