توضّح أدلة التشغيل السريع كيفية إعداد تطبيق وتشغيله، وهو تطبيق يستدعي إحدى واجهات Google Workspace API. يستخدم دليل البدء السريع هذا أسلوبًا مبسطًا للمصادقة مناسبًا لبيئة الاختبار. بالنسبة إلى بيئة الإنتاج، ننصحك بالتعرّف على المصادقة والتفويض قبل اختيار بيانات اعتماد الوصول المناسبة لتطبيقك.
أنشئ تطبيقًا يعمل من سطر الأوامر بلغة Python ويرسل طلبات إلى واجهة برمجة التطبيقات Drive Labels API.
الأهداف
- إعداد البيئة
- ثبِّت مكتبة البرامج.
- اضبط العيّنة.
- تشغيل العيّنة
المتطلبات الأساسية
- الإصدار 2.6 أو الإصدارات الأحدث من Python
- أداة إدارة الحزم pip
- مشروع Google Cloud
- حساب Google
إعداد البيئة
لإكمال هذا الدليل السريع، عليك إعداد بيئتك.
تفعيل واجهة برمجة التطبيقات
قبل استخدام واجهات Google APIs، عليك تفعيلها في مشروع على Google Cloud. يمكنك تفعيل واجهة برمجة تطبيق واحدة أو أكثر في مشروع واحد على Google Cloud.في Google Cloud Console، فعِّل Drive Labels API.
تفويض بيانات اعتماد لتطبيق على الكمبيوتر
لمصادقة المستخدمين النهائيين والوصول إلى بيانات المستخدمين في تطبيقك، عليك إنشاء معرّف عميل واحد أو أكثر من معرّفات عملاء OAuth 2.0. يُستخدَم معرّف العميل لتحديد تطبيق واحد لخوادم OAuth من Google. إذا كان تطبيقك يعمل على منصات متعددة، عليك إنشاء معرّف عميل منفصل لكل منصة.- في "وحدة تحكّم Google Cloud"، انتقِل إلى "القائمة" > > العملاء.
- انقر على إنشاء عميل.
- انقر على نوع التطبيق > تطبيق على الكمبيوتر.
- في حقل الاسم، اكتب اسمًا لبيانات الاعتماد. لا يظهر هذا الاسم إلا في "وحدة تحكّم Google Cloud".
- انقر على إنشاء.
تظهر بيانات الاعتماد التي تم إنشاؤها حديثًا ضِمن "معرّفات عملاء OAuth 2.0".
- احفظ ملف JSON الذي تم تنزيله باسم
credentials.json
، وانقل الملف إلى دليل العمل.
تثبيت مكتبة برامج Google
ثبِّت مكتبة برامج Google للغة Python:
pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib
للحصول على خيارات تثبيت بديلة، يُرجى الرجوع إلى قسم التثبيت في مكتبة Python.
ضبط العيّنة
- في دليل العمل، أنشئ ملفًا باسم
quickstart.py
. أدرِج الرمز التالي في
quickstart.py
:import os.path from google.auth.transport.requests import Request from google.oauth2.credentials import Credentials from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build from googleapiclient.errors import HttpError # If modifying these scopes, delete the file token.json. SCOPES = ['https://www.googleapis.com/auth/drive.labels.readonly'] def main(): """Shows basic usage of the Drive Labels API. Prints the first page of the customer's Labels. """ creds = None # The file token.json stores the user's access and refresh tokens, and is # created automatically when the authorization flow completes for the first # time. if os.path.exists('token.json'): creds = Credentials.from_authorized_user_file('token.json', SCOPES) # If there are no (valid) credentials available, let the user log in. if not creds or not creds.valid: if creds and creds.expired and creds.refresh_token: creds.refresh(Request()) else: flow = InstalledAppFlow.from_client_secrets_file('credentials.json', SCOPES) creds = flow.run_local_server(port=0) # Save the credentials for the next run with open('token.json', 'w') as token: token.write(creds.to_json()) try: service = build('drivelabels', 'v2', credentials=creds) response = service.labels().list( view='LABEL_VIEW_FULL').execute() labels = response['labels'] if not labels: print('No Labels') else: for label in labels: name = label['name'] title = label['properties']['title'] print(u'{0}:\t{1}'.format(name, title)) except HttpError as error: # TODO (developer) - Handle errors from Labels API. print(f'An error occurred: {error}') if __name__ == '__main__': main()
تشغيل العيّنة
في دليل العمل، أنشئ النموذج وشغِّله:
python quickstart.py
في المرة الأولى التي تشغّل فيها العيّنة، سيُطلب منك منح الإذن بالوصول:
- إذا لم تكن مسجِّلاً الدخول إلى حسابك على Google، سيُطلب منك هذا. إذا كنت مسجّلاً الدخول إلى حسابات متعددة، اختَر حسابًا واحدًا لاستخدامه في التفويض.
- انقر على قبول.
يتم تخزين معلومات التفويض في نظام الملفات، لذا لن يُطلب منك تقديم تفويض في المرة التالية التي تشغّل فيها الرمز النموذجي.
لقد أنشأت بنجاح تطبيق Python الأول الذي يرسل طلبات إلى Drive Labels API.