گوگل یک کتابخانه کلاینت پایتون برای تعامل با رابط برنامهنویسی کاربردی مدیریت تبلیغات (Ad Manager API) ارائه میدهد. ما استفاده از کتابخانه کلاینت به همراه PyPI را توصیه میکنیم.
برای شروع، یک پروژه جدید در IDE مورد نظر خود ایجاد کنید یا وابستگی را به یک پروژه موجود اضافه کنید. گوگل مصنوعات کتابخانه کلاینت را با نام google-ads-admanager در PyPI منتشر میکند.
الزامات.txt
google-ads-admanager==0.10.5
خط فرمان
pip install google-ads-admanager
پیکربندی اعتبارنامهها
کتابخانه کلاینت پایتون از OAuth2 و Application Default Credentials (ADC) برای احراز هویت استفاده میکند.
ADC به ترتیب در مکانهای زیر به دنبال اعتبارنامهها میگردد:
- متغیر محیطی
GOOGLE_APPLICATION_CREDENTIALS. - اعتبارنامههای کاربر از طریق رابط خط فرمان گوگل کلود (gcloud CLI) تنظیم شدهاند.
- هنگام اجرا روی 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)
برای مثالهایی از روشها و منابع دیگر، به مخزن گیتهاب googleapis/google-cloud-python مراجعه کنید.
ثبت درخواستها و پاسخهای HTTP
کتابخانه کلاینت پایتون از کتابخانه استاندارد logging پایتون برای ثبت درخواستها و پاسخهای HTTP استفاده میکند. به طور پیشفرض، ثبت وقایع غیرفعال است.
برای فعال کردن ثبت وقایع (logging)، متغیر محیطی 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 پایتون استفاده کنید:
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)
خطاهای 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'])
تنظیمات پروکسی را پیکربندی کنید
کتابخانه کلاینت پایتون به تنظیمات متغیرهای محیطی http_proxy و https_proxy احترام میگذارد.