استرجاع مراجع لجميع فئات النماذج الأوّلية المختلفة المطلوبة لاستخدام واجهة برمجة التطبيقات في يمكن أن تكون لغة بايثون مطولة وتتطلب منك فهمًا جوهريًا واجهة برمجة التطبيقات أو تبديل السياق بشكل متكرر للإشارة إلى النماذج الأوّلية أو المستندات
طريقة get_service
وget_type
للعميل
تتيح لك طريقتا الإحضار هاتين استرداد أي خدمة أو نوع كائن في
واجهة برمجة التطبيقات. يتم استخدام الطريقة get_service
لاسترداد برامج الخدمة. get_type
ولكن مع أي كائن آخر. فئات عملاء الخدمة محدّدة في الرمز البرمجي
أسفل مسار الإصدار google/ads/googleads/v*/services/services/
وجميع
الأنواع ضمن فئات الكائنات المختلفة،
google/ads/googleads/v*/common|enums|errors|resources|services/types/
يتم إنشاء كافة التعليمات البرمجية الموجودة أسفل دليل الإصدار، لذا من الأفضل
ممارسة على استخدام هذه الطرق بدلاً من استيراد الكائنات مباشرةً، في حالة
يتغير هيكل قاعدة التعليمات البرمجية.
في ما يلي مثال على كيفية استخدام طريقة get_service
لاسترداد مثيل
لعميل GoogleAdsService
.
from google.ads.googleads.client import GoogleAdsClient
# "load_from_storage" loads your API credentials from disk so they
# can be used for service initialization. Providing the optional `version`
# parameter means that the v17 version of GoogleAdsService will
# be returned.
client = GoogleAdsClient.load_from_storage(version="v17")
googleads_service = client.get_service("GoogleAdsService")
في ما يلي مثال على كيفية استخدام طريقة get_type
لاسترداد
مثيل Campaign
.
from google.ads.googleads.client import GoogleAdsClient
client = GoogleAdsClient.load_from_storage(version="v17")
campaign = client.get_type("Campaign")
عمليات التعداد
في حين يمكنك استخدام طريقة get_type
لاسترداد قيم التعداد،
يحتوي مثيل GoogleAdsClient
أيضًا على السمة enums
التي تستخدم
تُحمِّل Enums باستخدام الآلية نفسها المتّبعة في طريقة get_type
. هذه الواجهة
أن تكون أبسط وأسهل في القراءة من استخدام get_type
:
client = GoogleAdsClient.load_from_storage(version=v17)
campaign = client.get_type("Campaign")
campaign.status = client.enums.CampaignStatusEnum.PAUSED
يتم تمثيل حقول كائنات Proto التي هي عبارة عن تعدادات في بايثون بواسطة
enum. هذا يعني أنك
قراءة قيمة العضو بسهولة. التعامل مع المثيل "campaign
"
من المثال السابق في حلقة Repl Python:
>>> print(campaign.status)
CampaignStatus.PAUSED
>>> type(campaign.status)
<enum 'CampaignStatus'>
>>> print(campaign.status.value)
3
يكون من المفيد أحيانًا معرفة اسم الحقل الذي يتوافق مع
قيمة التعداد كما هو موضح أعلاه. يمكنك الوصول إلى هذه المعلومات باستخدام name
السمة:
>>> print(campaign.status.name)
'PAUSED'
>>> type(campaign.status.name)
<class 'str'>
يختلف التفاعل مع التعدادات اعتمادًا على ما إذا كان لديك
use_proto_plus
تم ضبط الإعدادات على true
أو false
. للحصول على تفاصيل عن الواجهتين، يمكنك الاطّلاع على
مستندات رسائل Protobuf.
تحديد الإصدارات
ويتم الاحتفاظ بإصدارات متعددة من واجهة برمجة التطبيقات في الوقت نفسه. بينما
قد يكون v17
هو الإصدار الأحدث، ولا تزال الإصدارات السابقة
الوصول إليها حتى غروب الشمس. ستحتوي المكتبة على نموذج أولي منفصل
وفئات الرسائل التي تتوافق مع كل إصدار نشط من إصدارات واجهة برمجة التطبيقات. للوصول إلى رسالة
فئة لإصدار معين توفر معلمة الكلمة الرئيسية version
عند
في تهيئة عميل بحيث يعرض دائمًا مثيل من ذلك المحدد
:الإصدار:
client = GoogleAdsService.load_from_storage(version="/google-ads/api/reference/rpc/v17/")
# The Campaign instance will be from the v17 version of the API.
campaign = client.get_type("Campaign")
ومن الممكن أيضًا تحديد الإصدار عند طلب get_service
get_type
طريقة سيؤدي القيام بذلك إلى إلغاء الإصدار المقدم
لإعداد العميل:
client = GoogleAdsService.load_from_storage()
# This will load the v17 version of the GoogleAdsService.
googleads_service = client.get_service(
"GoogleAdsService", version="v17")
client = GoogleAdsService.load_from_storage(version="v17")
# This will load the v15 version of a Campaign.
campaign = client.get_type("Campaign", version="v15")
إذا لم يتم توفير مَعلمة version
للكلمات الرئيسية، ستستخدم المكتبة تلقائيًا
أحدث إصدار. قائمة معدَّلة بأحدث الإصدارات وغيرها من الإصدارات المتوفّرة
في قسم التنقل الأيمن من الصفحة
مرجع واجهة برمجة التطبيقات