Python

‫Google کتابخانه کارخواه Python برای تعامل با Ad Manager API ارائه می‌دهد. توصیه می‌کنیم از کتابخانه کارخواه با PyPI استفاده کنید.

برای شروع، پروژه جدیدی در IDE انتخابی‌تان ایجاد کنید یا وابستگی را به پروژه موجود اضافه کنید. ‫Google عناصر کتابخانه کارخواه را در PyPI به‌عنوان google-ads-admanager منتشر می‌کند.

requirements.txt

google-ads-admanager==0.10.7

خط فرمان

pip install google-ads-admanager

پیکربندی اعتبارنامه‌ها

کتابخانه کارخواه Python از OAuth2 و اطلاعات اعتباری پیش‌فرض برنامه (ADC) برای اصالت‌سنجی استفاده می‌کند.

‫ADC به‌ترتیب در مکان‌های زیر به‌دنبال اطلاعات اعتباری می‌گردد:

  1. متغیر محیط GOOGLE_APPLICATION_CREDENTIALS.
  2. اطلاعات اعتباری کاربر ازطریق Google Cloud CLI (gcloud CLI) راه‌اندازی شده است.
  3. وقتی در Google Cloud اجرا می‌شود، حساب خدمات به منبع Google Cloud پیوست می‌شود.

برای ایجاد و پیکربندی کردن اطلاعات اعتباری ADC، به اصالت‌سنجی مراجعه کنید.

اولین درخواستتان را انجام دهید

هر سرویس دارای یک هدف ServiceClient با روش‌های هم‌زمان و ناهم‌زمان برای هر روش REST است. مثال زیر Network هم‌زمان می‌خواند.



from google.ads import admanager_v1


def sample_get_network():
    # Create a client
    client = admanager_v1.NetworkServiceClient()

    # Initialize request argument(s)
    request = admanager_v1.GetNetworkRequest(
        name="networks/[NETWORK_CODE]",
    )

    # Make the request
    response = client.get_network(request=request)

    # Handle the response
    print(response)

برای نمونه‌هایی از روش‌ها و منابع دیگر، به مخزن GitHub googleapis/google-cloud-python مراجعه کنید.

گزارش کردن درخواست‌ها و پاسخ‌های HTTP

کتابخانه کارخواه Python از کتابخانه استاندارد Python logging برای ثبت درخواست‌ها و پاسخ‌های HTTP استفاده می‌کند. به‌طور پیش‌فرض، گزارش‌گیری غیرفعال است.

برای فعال کردن گزارش‌گیری، متغیر محیطی GOOGLE_SDK_PYTHON_LOGGING_SCOPE را تنظیم کنید. این متغیر محیطی مدیریت رویدادهای گزارش‌گیری در سطح logging.DEBUG یا بالاتر را پیکربندی می‌کند.

# Log only Ad Manager API events
export GOOGLE_SDK_PYTHON_LOGGING_SCOPE=google.ads.admanager_v1

# Log all Google library events
export GOOGLE_SDK_PYTHON_LOGGING_SCOPE=google

یا می‌توانید از واحد logging در Python استفاده کنید:

import logging

from google.ads import admanager_v1

logger = logging.getLogger("google.ads.admanager_v1")
logger.addHandler(logging.StreamHandler())
logger.setLevel(logging.DEBUG)

مدیریت خطاها

همه خطاهای API از کلاس پایه GoogleAPIError گسترش می‌یابند.

فیلد دلیل خطا انواع خطا را به‌طور یکتا شناسایی می‌کند. از این فیلد برای تعیین نحوه مدیریت خطا استفاده کنید.

try:
  network = client.get_network(request=request)
  print(network)
except GoogleAPIError as e:
  # Handle error
  print(e.reason)

خطاهای Ad Manager API همچنین شامل یک requestId منحصربه‌فرد است که می‌توانید برای دریافت کمک در عیب‌یابی به پشتیبانی ارائه دهید. مثال زیر requestId را از GoogleAPIError استخراج می‌کند؛

except GoogleAPIError as e:
  requestInfoType = "type.googleapis.com/google.rpc.RequestInfo"
  requestInfo = [detail for detail in e.details if detail['@type'] == requestInfoType][0]
  print(requestInfo['requestId'])

پیکربندی تنظیمات پروکسی

کتابخانه کارخواه Python تنظیمات متغیر محیطی http_proxy و https_proxy را رعایت می‌کند.