توفّر Google مكتبة برامج Python للتعامل مع Ad Manager API. ننصح باستخدام مكتبة العميل مع PyPI.
للبدء، أنشئ مشروعًا جديدًا في بيئة التطوير المتكاملة التي تختارها أو أضِف التبعية إلى مشروع حالي. تنشر Google عناصر مكتبة البرامج الخاصة بالعميل على
PyPI باسم google-ads-admanager.
requirements.txt
google-ads-admanager==0.10.4
سطر الأوامر
pip install google-ads-admanager
ضبط بيانات الاعتماد
تستخدم مكتبة برامج Python OAuth2 وبيانات الاعتماد التلقائية للتطبيق (ADC) للمصادقة.
تبحث خدمة ADC عن بيانات الاعتماد بالترتيب في المواقع التالية:
- متغيّر البيئة
GOOGLE_APPLICATION_CREDENTIALS - إعداد بيانات اعتماد المستخدم من خلال واجهة سطر الأوامر (CLI) في Google Cloud (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)
للاطّلاع على أمثلة على طرق ومراجع أخرى، يُرجى الرجوع إلى مستودع GitHub
googleapis/google-cloud-python.
تسجيل طلبات HTTP واستجاباتها
تستخدم مكتبة برامج Python مكتبة logging القياسية في Python لتسجيل طلبات 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)
معالجة الأخطاء
توسّع جميع أخطاء واجهة برمجة التطبيقات الصنف الأساسي 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.