Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

एकल क्रॉलर का विवरण प्राप्त करने के लिए Boto3 का उपयोग कैसे करें?

समस्या का विवरण - क्रॉलर का विवरण प्राप्त करने के लिए पायथन में boto3 लाइब्रेरी का उपयोग करें।

उदाहरण - क्रॉलर, क्रॉलर_फॉर_एस3_फाइल_जॉब का विवरण प्राप्त करें।

इस समस्या को हल करने के लिए दृष्टिकोण/एल्गोरिदम

चरण 1 - अपवादों को संभालने के लिए boto3 और botocore अपवाद आयात करें।

चरण 2 - क्रॉलर_नाम अनिवार्य पैरामीटर है। यह एक स्ट्रिंग है इसलिए उपयोगकर्ता विवरण प्राप्त करने के लिए एक बार में केवल एक क्रॉलर नाम भेज सकता है।

चरण 3 - boto3 लाइब्रेरी का उपयोग करके AWS सत्र बनाएं। सुनिश्चित करें कि क्षेत्र_नाम डिफ़ॉल्ट प्रोफ़ाइल में उल्लेख किया गया है। यदि इसका उल्लेख नहीं है, तो स्पष्ट रूप से region_name . पास करें सत्र बनाते समय।

चरण 4 - गोंद के लिए AWS क्लाइंट बनाएं।

चरण 5 - अब get_crawler का उपयोग करें कार्य करें और क्रॉलर_नाम . पास करें ।

चरण 6 - यह क्रॉलर का मेटाडेटा लौटाता है।

चरण 7 - कार्य की जाँच करते समय कुछ गलत होने पर सामान्य अपवाद को संभालें।

उदाहरण

क्रॉलर का विवरण प्राप्त करने के लिए निम्न कोड का उपयोग करें -

import boto3
from botocore.exceptions import ClientError

def get_one_crawler_details(crawler_name:str)
   session = boto3.session.Session()
   glue_client = session.client('glue')
   try:
      crawler_details = glue_client.get_crawler(Name= crawler_name)
      return crawler_details
   except ClientError as e:
      raise Exception("boto3 client error in get_one_crawler_details: " + e.__str__())
   except Exception as e:
      raise Exception("Unexpected error in get_one_crawler_details: " + e.__str__())
print(get_one_crawler_details("crawler_for_s3_file_job"))

आउटपुट

{'Crawler': {'Name': 'crawler_for_s3_file_job', 'Role': 'glue-role',
'Targets': {'S3Targets': [{'Path': 's3://test/', 'Exclusions': []}],
'JdbcTargets': [], 'DynamoDBTargets': [], 'CatalogTargets': []},
'DatabaseName': 'default', 'Classifiers': [], 'SchemaChangePolicy':
{'UpdateBehavior': 'UPDATE_IN_DATABASE', 'DeleteBehavior':
'DEPRECATE_IN_DATABASE'}, 'State': 'READY', 'TablePrefix': 'prod_scdk_',
'CrawlElapsedTime': 0, 'CreationTime': datetime.datetime(2018, 9, 24,
20, 42, 7, tzinfo=tzlocal()), 'LastUpdated': datetime.datetime(2020, 4,
27, 14, 49, 12, tzinfo=tzlocal()), 'LastCrawl': {'Status': 'SUCCEEDED',
'LogGroup': '/aws-glue/crawlers', 'LogStream':
'crawler_for_s3_file_job', 'MessagePrefix': ************-90ad1',
'StartTime': datetime.datetime(2020, 4, 27, 14, 49, 19,
tzinfo=tzlocal())}, 'Version': 15}, 'ResponseMetadata': {'RequestId':
'8c7dcbde-***********************-774', 'HTTPStatusCode': 200,
'HTTPHeaders': {'date': 'Sun, 28 Feb 2021 11:34:32 GMT', 'content-type':
'application/x-amz-json-1.1', 'content-length': '805', 'connection':
'keep-alive', 'x-amzn-requestid': '8c7dcbde-**********************774'},
'RetryAttempts': 0}}

  1. एक बार में कई ट्रिगर्स का विवरण प्राप्त करने के लिए Boto3 का उपयोग कैसे करें?

    समस्या का विवरण - अपने खाते में उपलब्ध ट्रिगर प्राप्त करने के लिए पायथन में boto3 लाइब्रेरी का उपयोग करें। उदाहरण के लिए, उन ट्रिगर का विवरण प्राप्त करें जिनकी आपके खाते में अनुमति है। इस समस्या को हल करने के लिए दृष्टिकोण/एल्गोरिदम चरण 1 - अपवादों को संभालने के लिए boto3 और botocore अपवाद आयात करे

  1. एक बार में कई ग्लू जॉब का विवरण प्राप्त करने के लिए Boto3 का उपयोग कैसे करें?

    इस लेख में, हम देखेंगे कि नौकरी के नामों की दी गई सूची के लिए संसाधन मेटाडेटा की सूची कैसे प्राप्त करें। समस्या का विवरण - अपने खाते में नौकरी उपलब्ध कराने के लिए पायथन में boto3 लाइब्रेरी का उपयोग करें। उदाहरण के लिए, अपने खाते में उपलब्ध नौकरियों का विवरण प्राप्त करें। इस समस्या को हल करने के लिए

  1. क्रॉलर का विवरण प्राप्त करने के लिए पायथन में Boto3 लाइब्रेरी का उपयोग कैसे करें?

    उदाहरण:क्रॉलर का विवरण प्राप्त करें, crawler_for_s3_file_ नौकरी। इस समस्या को हल करने के लिए दृष्टिकोण/एल्गोरिदम चरण 1 - अपवादों को संभालने के लिए boto3 और botocore अपवाद आयात करें। चरण 2 - क्रॉलर_नाम अनिवार्य पैरामीटर है। यह एक सूची है ताकि उपयोगकर्ता विवरण प्राप्त करने के लिए एक बार में एकाधिक क