কম্পিউটার

AWS রিসোর্স ব্যবহার করে S3 থেকে একটি বস্তু মুছতে পাইথনে Boto3 লাইব্রেরি কীভাবে ব্যবহার করবেন?


এই নিবন্ধে, আমরা পাইথনের বোটো 3 লাইব্রেরি ব্যবহার করে কীভাবে S3 থেকে একটি বস্তু মুছে ফেলা যায় তা দেখব৷

উদাহরণ − Bucket_1/S3 এর টেস্টফোল্ডার থেকে test.zip মুছুন

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

ধাপ 1 − ব্যতিক্রমগুলি পরিচালনা করতে boto3 এবং botocore ব্যতিক্রমগুলি আমদানি করুন৷

ধাপ 2 − s3_files_path হল ফাংশনে প্যারামিটার।

ধাপ 3 − যাচাই করুন s3_files_path AWS ফরম্যাটে s3://bucket_name/key হিসাবে পাস করা হয়েছে।

পদক্ষেপ 4৷ - boto3 লাইব্রেরি ব্যবহার করে একটি AWS সেশন তৈরি করুন।

ধাপ 5 - S3 এর জন্য একটি AWS রিসোর্স তৈরি করুন।

ধাপ 6 − S3 পাথকে বিভক্ত করুন এবং রুট বাকেটের নাম এবং অবজেক্ট পাথ মুছে ফেলার জন্য আলাদা করার জন্য অপারেশন করুন৷

পদক্ষেপ 7 − এখন, delete_object ফাংশনটি ব্যবহার করুন এবং মুছে ফেলার জন্য বালতির নাম এবং কী পাস করুন।

ধাপ 8 - বস্তুটি একটি ফাইলের সমস্ত বিবরণ সহ একটি অভিধানও। এখন, LastModified আনুন প্রতিটি ফাইলের বিশদ বিবরণ এবং প্রদত্ত তারিখের টাইমস্ট্যাম্পের সাথে তুলনা করুন।

ধাপ 9 − ফাইলটি মুছে ফেলার সময় কিছু ভুল হলে জেনেরিক ব্যতিক্রমটি পরিচালনা করুন৷

উদাহরণ

S3 -

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

def delete_objects_from_s3(s3_files_path):
   if 's3://' not in s3_files_path:
      raise Exception('Given path is not a valid s3 path.')
   session = boto3.session.Session(profile_name='saml')
   s3_resource = session.resource('s3')
   s3_tokens = s3_files_path.split('/')
   bucket_name = s3_tokens[2]
   object_path = ""
   filename = s3_tokens[len(s3_tokens) - 1]
   print('bucket_name: ' + bucket_name)

   if len(s3_tokens) > 4:
      for tokn in range(3, len(s3_tokens) - 1):
         object_path += s3_tokens[tokn] + "/"
      object_path += filename
   else:
      object_path += filename
   print('object: ' + object_path)
   try:
      result = s3_resource.meta.client.delete_object(Bucket=bucket_name, Key=object_path)
   except ClientError as e:
      raise Exception( "boto3 client error in delete_objects_from_s3 function: " + e.__str__())
   except Exception as e:
      raise Exception( "Unexpected error in delete_objects_from_s3 function of s3 helper: " + e.__str__())

#delete test.zip
print(delete_objects_from_s3("s3://Bucket_1/testfolder/test.zip")

আউটপুট

bucket_name: Bucket_1
object: testfolder/test.zip

  1. AWS রিসোর্স ব্যবহার করে S3 এ একটি বস্তু আপলোড করতে পাইথনে Boto3 লাইব্রেরি কীভাবে ব্যবহার করবেন?

  2. AWS ক্লায়েন্ট ব্যবহার করে S3 এ উপস্থিত বালতিগুলির একটি তালিকা পেতে Boto3 কীভাবে ব্যবহার করবেন?

  3. কিভাবে Python ব্যবহার করে একটি ফাইল মুছে ফেলতে হয়?

  4. পাইথন ব্যবহার করে একটি স্ট্রিং থেকে একটি অক্ষর কিভাবে মুছে ফেলা যায়?