یک برنامه خط فرمان پایتون ایجاد کنید که درخواستهایی را به API ابزارهای مدیریت پست ارسال کند.
آموزشهای سریع، نحوه راهاندازی و اجرای برنامهای که API گوگل ورکاسپیس را فراخوانی میکند، توضیح میدهند. این آموزش سریع از یک رویکرد احراز هویت سادهشده استفاده میکند که برای محیط آزمایشی مناسب است. برای محیط عملیاتی، توصیه میکنیم قبل از انتخاب اعتبارنامههای دسترسی مناسب برای برنامه خود، در مورد احراز هویت و مجوزدهی اطلاعات کسب کنید.
این راهنمای سریع از کتابخانههای کلاینت API پیشنهادی Google Workspace برای مدیریت برخی از جزئیات جریان احراز هویت و مجوز استفاده میکند.
اهداف
- محیط خود را تنظیم کنید.
- کتابخانه کلاینت را نصب کنید.
- نمونه را تنظیم کنید.
- نمونه را اجرا کنید.
پیشنیازها
برای اجرای این کوئیکاستارت، به پیشنیازهای زیر نیاز دارید:
- پایتون ۳.۱۰.۷ یا بالاتر
- ابزار مدیریت بسته pip
- یک پروژه ابری گوگل .
- یک حساب گوگل که جیمیل آن فعال باشد.
محیط خود را تنظیم کنید
برای تکمیل این شروع سریع، محیط خود را راهاندازی کنید.
فعال کردن API
قبل از استفاده از APIهای گوگل، باید آنها را در یک پروژه گوگل کلود فعال کنید. میتوانید یک یا چند API را در یک پروژه گوگل کلود فعال کنید.در کنسول Google Cloud، رابط برنامهنویسی کاربردی (API) ابزارهای مدیریت پست (Postmaster Tools) را فعال کنید.
صفحه رضایت OAuth را پیکربندی کنید
اگر از یک پروژه جدید Google Cloud برای تکمیل این راهنمای سریع استفاده میکنید، صفحه رضایت OAuth را پیکربندی کنید. اگر قبلاً این مرحله را برای پروژه Cloud خود انجام دادهاید، به بخش بعدی بروید.
- در کنسول گوگل کلود، به Menu > برویدGoogle Auth platform > برندسازی .
- اگر قبلاً تنظیمات را انجام دادهاید Google Auth platformمیتوانید تنظیمات صفحه رضایت OAuth زیر را در Branding ، Audience و Data Access پیکربندی کنید. اگر پیامی با این مضمون مشاهده کردید Google Auth platform هنوز پیکربندی نشده است ، روی شروع کار کلیک کنید:
- در قسمت اطلاعات برنامه ، در قسمت نام برنامه ، نامی برای برنامه وارد کنید.
- در ایمیل پشتیبانی کاربر ، یک آدرس ایمیل پشتیبانی انتخاب کنید که کاربران در صورت داشتن هرگونه سوال در مورد رضایت خود بتوانند با شما تماس بگیرند.
- روی بعدی کلیک کنید.
- در قسمت مخاطبان ، داخلی (Internal) را انتخاب کنید.
- روی بعدی کلیک کنید.
- در قسمت اطلاعات تماس ، یک آدرس ایمیل وارد کنید که از طریق آن بتوانید از هرگونه تغییر در پروژه خود مطلع شوید.
- روی بعدی کلیک کنید.
- در قسمت Finish ، سیاست دادههای کاربر سرویسهای API گوگل را مرور کنید و در صورت موافقت، گزینه «من با سیاستهای دادههای کاربر سرویسهای API گوگل موافقم» را انتخاب کنید.
- روی ادامه کلیک کنید.
- روی ایجاد کلیک کنید.
- فعلاً میتوانید از اضافه کردن محدودهها صرف نظر کنید. در آینده، وقتی برنامهای برای استفاده در خارج از سازمان Google Workspace خود ایجاد میکنید، باید نوع کاربر (User type) را به خارجی (External) تغییر دهید. سپس محدودههای مجوز مورد نیاز برنامه خود را اضافه کنید. برای کسب اطلاعات بیشتر، به راهنمای کامل پیکربندی رضایت OAuth مراجعه کنید.
اعتبارنامهها را برای یک برنامه دسکتاپ تأیید کنید
برای احراز هویت کاربران نهایی و دسترسی به دادههای کاربر در برنامه خود، باید یک یا چند شناسه کلاینت OAuth 2.0 ایجاد کنید. شناسه کلاینت برای شناسایی یک برنامه واحد به سرورهای OAuth گوگل استفاده میشود. اگر برنامه شما روی چندین پلتفرم اجرا میشود، باید برای هر پلتفرم یک شناسه کلاینت جداگانه ایجاد کنید.- در کنسول گوگل کلود، به Menu > برویدGoogle Auth platform > مشتریان .
- روی ایجاد کلاینت کلیک کنید.
- روی نوع برنامه > برنامه دسکتاپ کلیک کنید.
- در فیلد نام ، نامی برای اعتبارنامه تایپ کنید. این نام فقط در کنسول Google Cloud نمایش داده میشود.
- روی ایجاد کلیک کنید.
اعتبارنامهی تازه ایجاد شده در زیر «OAuth 2.0 Client IDs» ظاهر میشود.
- فایل JSON دانلود شده را با نام
credentials.jsonذخیره کنید و آن را به دایرکتوری کاری خود منتقل کنید.
کتابخانه کلاینت گوگل را نصب کنید
کتابخانه کلاینت گوگل برای پایتون را نصب کنید:
pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib
نمونه را پیکربندی کنید
- در دایرکتوری کاری خود، فایلی با نام
quickstart.pyایجاد کنید. کد زیر را در
quickstart.pyقرار دهید:from __future__ import print_function import pickle import os.path from googleapiclient.discovery import build from google_auth_oauthlib.flow import InstalledAppFlow from google.auth.transport.requests import Request from googleapiclient import errors # If modifying these scopes, delete the file token.pickle. SCOPES = ['https://www.googleapis.com/auth/postmaster.readonly'] def main(): """Shows basic usage of the PostmasterTools v1beta1 API. Prints the visible domains on user's domain dashboard in https://postmaster.google.com/managedomains. """ creds = None # The file token.pickle 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.pickle'): with open('token.pickle', 'rb') as token: creds = pickle.load(token) # 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.pickle', 'wb') as token: pickle.dump(creds, token) service = build('gmailpostmastertools', 'v1beta1', credentials=creds) domains = service.domains().list().execute() if not domains: print('No domains found.') else: print('Domains:') for domain in domains['domains']: print(domain) if __name__ == '__main__': main()
نمونه را اجرا کنید
در دایرکتوری کاری خود، نمونه را بسازید و اجرا کنید:
python3 quickstart.py
- اولین باری که نمونه را اجرا میکنید، از شما اجازه دسترسی میخواهد:
- اگر قبلاً وارد حساب گوگل خود نشدهاید، در صورت درخواست وارد شوید. اگر با چندین حساب وارد شدهاید، یک حساب را برای استفاده جهت مجوز انتخاب کنید.
- روی پذیرش کلیک کنید.
برنامه پایتون شما اجرا میشود و API ابزارهای مدیریت پست (Postmaster Tools API) را فراخوانی میکند.
اطلاعات مجوز در سیستم فایل ذخیره میشود، بنابراین دفعه بعد که کد نمونه را اجرا میکنید، از شما درخواست مجوز نمیشود.
مراحل بعدی
- عیبیابی مشکلات احراز هویت و مجوز
- مستندات مرجع API REST ابزارهای مدیریت پست
- کلاینت APIهای گوگل برای مستندسازی پایتون
- مستندات PyDoc رابط برنامهنویسی کاربردی ابزارهای مدیریت پست