logo

وحدة Boto3 بايثون

Boto3 عبارة عن وحدة Python تسمح للمطورين بالتفاعل مع موارد Amazon Web Services (AWS) برمجيًا. فهو يوفر واجهة سهلة الاستخدام لخدمات AWS، مما يسهل على المطورين إنشاء تطبيقات تتفاعل مع خدمات AWS.

باستخدام Boto3، يمكن للمطورين إجراء عمليات متنوعة على موارد AWS، مثل إنشاء مثيلات EC2 وإدارتها، ومستودعات S3، وجداول DynamoDB، ووظائف Lambda، والعديد من خدمات AWS الأخرى. تم تصميم Boto3 فوق AWS SDK لـ Python (boto) ويوفر واجهة برمجة تطبيقات ذات مستوى أعلى من AWS SDK، مما يسهل العمل مع موارد AWS.

تتضمن بعض الميزات الرئيسية لبرنامج Boto3 ما يلي:

فك تشفير Base64 في JS
    واجهة سهلة الاستخدام:يوفر Boto3 واجهة بسيطة وبديهية تسمح للمطورين بالتفاعل مع موارد AWS باستخدام Python.مجموعة واسعة من الخدمات:يدعم Boto3 نطاقًا واسعًا من خدمات AWS، مما يجعله أداة قوية للمطورين الذين ينشئون تطبيقات على AWS.قابلية التوسع:تم تصميم Boto3 ليكون قابلاً للتطوير، مما يسمح للمطورين بالتعامل مع التطبيقات واسعة النطاق التي تتطلب تفاعلات مع موارد AWS.التخصيص:يسمح Boto3 للمطورين بتخصيص تفاعلاتهم مع خدمات AWS من خلال توفير واجهة برمجة تطبيقات مرنة تدعم خيارات ومعلمات متنوعة.

تاريخ:

Boto3 عبارة عن مجموعة تطوير برامج مفتوحة المصدر (SDK) مقدمة من Amazon Web Services (AWS) لمطوري Python لإنشاء تطبيقات تتكامل مع خدمات AWS. تم إصدار Boto3 لأول مرة في سبتمبر 2012، وتتم صيانته حاليًا بواسطة AWS.

قبل Boto3، قدمت AWS مجموعتي SDK أخريين لمطوري Python: Boto وBoto2. كان Boto أول حزمة SDK تم إصدارها بواسطة AWS لمطوري Python في عام 2006، وقد وفر روابط Python لخدمات AWS. تم إصدار Boto2 في عام 2011 كإعادة كتابة كاملة لـ Boto، مع تحسين الأداء ودعم خدمات AWS الإضافية وتوثيق أفضل.

تم إصدار Boto3 في عام 2015، وقد تم تصميمه ليكون SDK أكثر سهولة في الاستخدام وبديهية من الإصدارات السابقة. تم تصميمه أيضًا لدعم خدمات AWS الجديدة التي تم إصدارها منذ إصدار Boto2. يعتمد Boto3 على نموذج موجه نحو الموارد يسمح للمطورين بالعمل مع خدمات AWS كما لو كانت كائنات في كود Python الخاص بهم. وهذا يجعل من السهل كتابة وصيانة التعليمات البرمجية التي تتفاعل مع خدمات AWS.

منذ إصداره، أصبح Boto3 حزمة SDK الموصى بها لمطوري Python الذين يعملون مع خدمات AWS. تتم صيانته بشكل نشط بواسطة AWS، ولديه مجتمع كبير ونشط من المساهمين الذين يساعدون في تحسين وظائفه وتوسيعها. يستمر Boto3 في التطور، مع إضافة ميزات وخدمات جديدة بانتظام، مما يجعله أداة قوية لإنشاء التطبيقات التي تتكامل مع AWS.

تطبيق:

فيما يلي مثال لتطبيق Boto3 في بايثون:

أولاً، تحتاج إلى تثبيت وحدة boto3 باستخدام النقطة:

 pip install boto3 

بمجرد تثبيت وحدة boto3، يمكنك استخدامها في كود Python الخاص بك. فيما يلي مثال لاستخدام boto3 لسرد كافة المجموعات الموجودة في حساب AWS الخاص بك:

 import boto3 # Create a boto3 session session = boto3.Session( aws_access_key_id='your_access_key_id', aws_secret_access_key='your_secret_access_key', region_name='your_aws_region' ) # Create an S3 client s3 = session.client('s3') # List all the buckets in your account response = s3.list_buckets() # Print the bucket names for bucket in response['Buckets']: print(bucket['Name']) 

في هذا المثال، نقوم أولاً بإنشاء جلسة boto3 من خلال توفير معرف مفتاح الوصول إلى AWS ومفتاح الوصول السري ومنطقة AWS. نقوم بعد ذلك بإنشاء عميل S3 باستخدام الجلسة واستخدام طريقة list_buckets للحصول على قائمة بجميع المجموعات الموجودة في حسابنا. أخيرًا، نراجع قائمة الدلاء ونطبع أسمائها.

لاحظ أنك تحتاج إلى استبدال your_access_key_id وyour_secret_access_key وyour_aws_region بمعرف مفتاح وصول AWS الفعلي ومفتاح الوصول السري ومنطقة AWS. تأكد أيضًا من أن مستخدم IAM المرتبط بمفتاح الوصول لديه الأذونات اللازمة للوصول إلى S3.

مزايا وحدة boto3:

Boto3 هي مكتبة Python قوية تتيح للمطورين التفاعل مع موارد Amazon Web Services (AWS). فيما يلي بعض مزايا استخدام Boto3:

    سهل الاستخدام:يوفر Boto3 واجهة بسيطة وسهلة الاستخدام للتفاعل مع خدمات AWS. باستخدام بضعة أسطر فقط من تعليمات Python البرمجية، يمكنك إنشاء موارد AWS وتكوينها وإدارتها.تغطية شاملة:يوفر Boto3 تغطية شاملة لخدمات AWS. وهو يدعم أكثر من 100 خدمة من خدمات AWS، بما في ذلك Amazon S3 وEC2 وDynamoDB وLambda.المرونة:يوفر Boto3 واجهة مرنة يمكن استخدامها لأتمتة أي مهمة لإدارة موارد AWS. يمكنك استخدام Boto3 لأتمتة توفير الموارد والتكوين والمراقبة والمزيد.واجهة برمجة التطبيقات بايثونيك:يوفر Boto3 واجهة برمجة تطبيقات Pythonic التي تجعله سهل الاستخدام والفهم. يمكن لمطوري Python استخدام Boto3 لكتابة تعليمات برمجية قابلة للقراءة والصيانة والتوسيع.المجتمع النشط:لدى Boto3 مجتمع نشط من المطورين الذين يساهمون في المشروع ويقدمون الدعم. وهذا يعني أنه يمكنك الحصول على المساعدة في مشاريع Boto3 الخاصة بك وإيجاد حلول لأية مشكلات تواجهها.التكامل مع مكتبات بايثون الأخرى:يمكن دمج Boto3 بسهولة مع مكتبات Python الأخرى، مثل Pandas وNumPy وMatplotlib، لتوفير إمكانات قوية لتحليل البيانات وتصورها.

باختصار، Boto3 عبارة عن وحدة Python قوية تعمل على تبسيط عملية العمل مع موارد AWS. فهو يوفر واجهة سهلة الاستخدام وسهلة الاستخدام، مما يسمح للمطورين بإجراء عمليات متنوعة على خدمات AWS برمجيًا. بشكل عام، تعد Boto3 مكتبة متعددة الاستخدامات وقوية تسهل التفاعل مع خدمات AWS من Python. سواء كنت مطورًا متمرسًا أو بدأت للتو في استخدام AWS، يعد Boto3 خيارًا ممتازًا لإدارة موارد AWS الخاصة بك.

تطبيقات وحدة Boto3:

تتضمن بعض تطبيقات Boto3 الأكثر شيوعًا ما يلي:

    إدارة موارد AWS:يوفر Boto3 واجهة برمجة تطبيقات بسيطة وبديهية لإدارة موارد AWS المتنوعة، مثل مثيلات EC2 ومستودعات S3 وجداول DynamoDB والمزيد.أتمتة سير عمل AWS:باستخدام Boto3، يمكنك أتمتة سير العمل والعمليات المعقدة التي تتضمن خدمات AWS متعددة. على سبيل المثال، يمكنك إنشاء برنامج نصي يقوم تلقائيًا بتشغيل مثيل EC2، وإعداد قاعدة بيانات على RDS، ونشر تطبيق ويب على Elastic Beanstalk.تحليل ومعالجة البيانات:يمكن استخدام Boto3 لتحليل ومعالجة كميات كبيرة من البيانات المخزنة في خدمات AWS مثل S3 وDynamoDB. يمكنك استخدام Boto3 لكتابة البرامج النصية التي تقرأ البيانات المخزنة في هذه الخدمات وتكتبها وتتعامل معها.الرصد والتسجيل:يمكن استخدام Boto3 لمراقبة موارد AWS المتنوعة وتسجيلها، مثل مثيلات EC2 ووظائف Lambda ومقاييس CloudWatch. يمكنك إنشاء برامج نصية تراقب هذه الموارد تلقائيًا وتنبهك في حالة ظهور أية مشكلات.الأمن والتحكم في الوصول:يوفر Boto3 أدوات لإدارة الأمان والتحكم في الوصول في AWS. على سبيل المثال، يمكنك استخدام Boto3 لإنشاء وإدارة مستخدمي IAM والمجموعات والسياسات، بالإضافة إلى تكوين مجموعات الأمان وقوائم ACL للشبكة.

بشكل عام، يعد Boto3 أداة قوية ومتعددة الاستخدامات يمكن استخدامها لأتمتة وإدارة ومراقبة مختلف موارد وخدمات AWS.

إلى طريقة السلسلة في Java

مميزات وحدة boto3

Boto3 هي مكتبة Python تتيح لك التفاعل مع Amazon Web Services (AWS). فيما يلي بعض الميزات الرئيسية لوحدة Boto3:

    واجهة برمجة التطبيقات البسيطة:يتمتع Boto3 بواجهة برمجة تطبيقات بسيطة وبديهية تلخص العديد من التفاصيل ذات المستوى المنخفض للعمل مع خدمات AWS.تغطية AWS الشاملة:يوفر Boto3 الدعم لمجموعة واسعة من خدمات AWS، بما في ذلك S3 وEC2 وLambda وDynamoDB وغيرها الكثير.الترحيل التلقائي وإعادة المحاولة:يتعامل Boto3 تلقائيًا مع الترحيل وإعادة المحاولة عند العمل مع خدمات AWS، مما يسهل العمل مع مجموعات البيانات الكبيرة والتعامل مع الأخطاء العابرة.واجهات الموارد والعميل:يوفر Boto3 واجهات الموارد والعميل للعمل مع خدمات AWS. توفر واجهة الموارد تجريدًا عالي المستوى للعمل مع موارد AWS، بينما توفر واجهة العميل واجهة برمجة تطبيقات ذات مستوى أقل وأكثر مرونة.التوافق عبر الأنظمة الأساسية:يتوافق Boto3 مع مجموعة واسعة من الأنظمة الأساسية، بما في ذلك Windows وmacOS وLinux.تكوينات قابلة للتخصيص:يتيح لك Boto3 تخصيص إعدادات التكوين الافتراضية، مثل المنطقة والمصادقة وإعادة المحاولة.التوثيق الشامل والدعم المجتمعي:لدى Boto3 وثائق شاملة ومجتمع كبير من المطورين الذين يساهمون في المكتبة ويقدمون الدعم.

مثال على وحدة boto3:

بالتأكيد، إليك مثال لكيفية استخدام وحدة boto3 في Python للتفاعل مع AWS S3:

 import boto3 # Create an S3 client s3 = boto3.client('s3') # List all buckets in your account response = s3.list_buckets() # Print the bucket names for bucket in response['Buckets']: print(bucket['Name']) # Create a new bucket bucket_name = 'my-new-bucket' s3.create_bucket(Bucket=bucket_name) # Upload a file to the bucket file_name = 'my-file.txt' with open(file_name, 'rb') as file: s3.upload_fileobj(file, bucket_name, file_name) # Download a file from the bucket download_file_name = 'downloaded-file.txt' with open(download_file_name, 'wb') as file: s3.download_fileobj(bucket_name, file_name, file) 

في هذا المثال، نقوم أولاً بإنشاء عميل S3 باستخدام الأسلوب boto3.client(). نستخدم بعد ذلك العميل لإدراج جميع المجموعات الموجودة في الحساب، وإنشاء مجموعة جديدة، وتحميل ملف إلى المجموعة، وتنزيل ملف من المجموعة.

تحويل عدد صحيح إلى سلسلة

لاحظ أنه قبل استخدام boto3، ستحتاج إلى تكوين بيانات اعتماد AWS الخاصة بك. يمكنك القيام بذلك إما عن طريق تعيين متغيرات البيئة أو إنشاء ملف تكوين (يوجد عادة في ~/.aws/config ).

المشروع على وحدة Boto3 بيثون

Boto3 هي وحدة Python التي توفر واجهة للتفاعل مع Amazon Web Services (AWS). باستخدام Boto3، يمكنك أتمتة خدمات AWS مثل EC2 وS3 وLambda وغيرها الكثير. في هذا المشروع، سنقوم بإنشاء برنامج نصي بلغة Python يستخدم Boto3 للتفاعل مع حاوية S3.

فيما يلي خطوات إنشاء مشروع بسيط باستخدام Boto3:

1. أولاً، قم بتثبيت Boto3 عن طريق تشغيل الأمر التالي في جهازك:

 pip install boto3 

2. بعد ذلك، قم باستيراد وحدة Boto3 في برنامج Python النصي الخاص بك:

 import boto3 

3. قم بإنشاء عميل S3 باستخدام الكود التالي:

mylivecricket.in
 s3 = boto3.client('s3') 

4. قم بإدراج جميع حاويات S3 المتاحة باستخدام الكود التالي:

 response = s3.list_buckets() for bucket in response['Buckets']: print(f'Bucket Name: {bucket['Name']}') 

5. قم بإنشاء حاوية S3 جديدة باستخدام الكود التالي:

 s3.create_bucket(Bucket='my-bucket') 

6. قم بتحميل ملف إلى حاوية S3 باستخدام الكود التالي:

 s3.upload_file('/path/to/my/file', 'my-bucket', 'file-name') 

7. قم بتنزيل ملف من حاوية S3 باستخدام الكود التالي:

 s3.download_file('my-bucket', 'file-name', '/path/to/my/downloaded/file') 

8. احذف ملفًا من حاوية S3 باستخدام الكود التالي:

 s3.delete_object(Bucket='my-bucket', Key='file-name') 

9. احذف حاوية S3 باستخدام الكود التالي:

 s3.delete_bucket(Bucket='my-bucket') 

توضيح:

للبدء، نبدأ بتثبيت Boto3 باستخدام النقطة. بمجرد التثبيت، نقوم باستيراد الوحدة إلى برنامج Python النصي الخاص بنا.

نقوم بعد ذلك بإنشاء عميل S3 باستخدام الدالة boto3.client(). يتيح لنا هذا العميل التفاعل مع خدمة S3.

تبديل جافا

بعد ذلك، نقوم بإدراج جميع الحاويات المتاحة باستخدام الدالة s3.list_buckets(). يؤدي هذا إلى إرجاع قاموس يحتوي على بيانات وصفية حول جميع المجموعات المتاحة في حساب AWS الخاص بنا. ثم نقوم بالتكرار على الدلاء وطباعة أسمائهم.

نقوم بعد ذلك بإنشاء حاوية S3 جديدة باستخدام الدالة s3.create_bucket(). نحدد اسم المجموعة التي نريد إنشاءها كوسيطة.

بعد إنشاء المجموعة، نقوم بتحميل ملف إلى المجموعة باستخدام الدالة s3.upload_file(). نحدد المسار إلى الملف الذي نريد تحميله، واسم المجموعة التي نريد تحميل الملف إليها، والاسم الذي نريد أن نعطيه للملف الذي تم تحميله.

نقوم بعد ذلك بتنزيل الملف الذي تم تحميله من المجموعة باستخدام الدالة s3.download_file(). نحدد اسم المجموعة واسم الملف الذي نريد تنزيله والمسار الذي نريد حفظ الملف الذي تم تنزيله فيه.

بعد ذلك، نقوم بحذف الملف الذي تم تحميله من المجموعة باستخدام الدالة s3.delete_object(). نحدد اسم المجموعة واسم الملف الذي نريد حذفه.

وأخيرًا، نقوم بحذف حاوية S3 باستخدام الدالة s3.delete_bucket(). نحدد اسم المجموعة التي نريد حذفها.

هذا كل شيء! لديك الآن فهم أساسي لكيفية استخدام Boto3 للتفاعل مع مجموعة S3 في AWS. يمكنك التوسع في هذا المشروع عن طريق إضافة المزيد من الوظائف أو دمجه مع خدمات AWS الأخرى.