উদাহরণ: একটি ক্রলারের ডিটেইলস পাওয়া, crawler_for_s3_file_job।
সমাধানের পদ্ধতি/অ্যালগরিদম
ধাপ ১ − boto3 এবং botocore এক্সসেপশন ইম্পোর্ট করে এক্সসেপশন হ্যান্ডল করা।
ধাপ ২ − crawler_name হলো বাধ্যতামূলক প্যারামিটার। এটি একটি লিস্ট তাই ইউজার একবারে একাধিক ক্রলারের নাম পাস করে ডিটেইলস আনয়ন করতে পারে।
ধাপ ৩ − boto3 লাইব্রেরি ব্যবহার করে AWS সেশন তৈরি করা। নিশ্চিত করুন region_name ডিফল্ট প্রোফাইলে ذکر করা আছে। না থাকলে সেশন তৈরি করার সময় স্পষ্টভাবে region_name পাস করুন।
ধাপ ৪ − Glue-এর জন্য AWS ক্লায়েন্ট তৈরি করা।
ধাপ ৫ − এখন batch_get_crawlers ফাংশন ব্যবহার করুন এবং crawler_names পাস করুন।
ধাপ ৬ − এটি ক্রলারদের মেটাডেটা রিটার্ন করে।
ধাপ ৭ − জব চেক করার সময় যদি কিছু ভুল হয় তবে জেনেরিক এক্সসেপশন হ্যান্ডল করা।
উদাহরণ
একটি ক্রলারের ডিটেইলস আনয়ন করতে নিচের কোড ব্যবহার করুন −
import boto3 from botocore.exceptions import ClientError def get_crawler_details(crawler_names:list): session = boto3.session.Session() glue_client = session.client('glue') try: crawler_details = glue_client.batch_get_crawlers(CrawlerNames=crawler_names) return crawler_details except ClientError as e: raise Exception("boto3 client error in get_crawler_details: " + e.__str__()) except Exception as e: raise Exception("Unexpected error in get_crawler_details: " + e.__str__()) print(get_crawler_details("[crawler_for_s3_file_job]"))