Hizmet ve Tür Alıcıları

API'yi kullanmak için gereken tüm proto sınıflarının referanslarını Python ayrıntılı olabilir ve bu problemi çözmek için öncelikle Protolara veya belgelere referansta bulunmak için API veya sık sık bağlam geçişini yapın.

Müşterinin get_service ve get_type yöntemleri

Bu iki alıcı yöntemi, herhangi bir hizmeti veya tür nesnesini API'ye gidin. get_service yöntemi, hizmet istemcilerini almak için kullanılır. get_type. herhangi başka bir nesne için kullanılır. Kodda tanımlanmış hizmet istemcisi sınıfları google/ads/googleads/v*/services/services/ sürüm yolunun altında ve tümü çeşitli nesne kategorileri altında tanımlanır ve google/ads/googleads/v*/common|enums|errors|resources|services/types/. Sürüm dizininin altındaki tüm kod oluşturulur; bu nedenle, veya üçüncü taraf bir SDK'nın kullanılması durumunda, nesneleri doğrudan içe aktarmak yerine bu değişikliklerinin yapısı.

Aşağıda, örnek almak için get_service yönteminin nasıl kullanılacağına dair bir örnek verilmiştir GoogleAdsService istemcisi.

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")

Aşağıdaki örnekte, birget_type Campaign örneği.

from google.ads.googleads.client import GoogleAdsClient

client = GoogleAdsClient.load_from_storage(version="v17")
campaign = client.get_type("Campaign")

Sıralamalar

Enum'ları almak için get_type yöntemini kullanabilirsiniz ancak GoogleAdsClient örneği ayrıca dinamik bir şekilde güncellenen bir enums Enum'ları get_type yöntemiyle aynı mekanizmayı kullanarak yükler. Bu arayüz get_type kullanımına kıyasla daha basit ve daha kolay okunacak şekilde tasarlanmıştır:

client = GoogleAdsClient.load_from_storage(version=v17)

campaign = client.get_type("Campaign")
campaign.status = client.enums.CampaignStatusEnum.PAUSED

Numaralandırma olan proto nesne alanları, Python'da yerel enum türünü kullanın. Yani bu verileri üyenin değerini kolayca okuyabilir. campaign örneğiyle çalışma örneği üzerinden okuyabilirsiniz:

>>> print(campaign.status)
CampaignStatus.PAUSED
>>> type(campaign.status)
<enum 'CampaignStatus'>
>>> print(campaign.status.value)
3

Bazen, açılış sayfasına karşılık gelen alanın adını bilmek enum değerini kullanın. Bu bilgilere erişmek için name özellik:

>>> print(campaign.status.name)
'PAUSED'
>>> type(campaign.status.name)
<class 'str'>

Sıralamalarla etkileşimde bulunma, use_proto_plus yapılandırma true veya false olarak ayarlandı. İki arayüzle ilgili ayrıntılar için bkz. protobuf mesajları dokümanını inceleyin.

Sürüm oluşturma

API'nin birden çok sürümü aynı anda korunur. Bu sırada v17 en son sürüm olabilir, önceki sürümler kullanılmaya devam eder gün batımına kadar erişilebilir. Kitaplıkta ayrı bir proto mesaj sınıflarını gösterir. Bir mesaja erişmek için belirli bir sürümün sınıfı, aşağıdaki durumlarda version anahtar kelime parametresini sağlar: bir istemciyi her zaman belirtilenden örnek döndürecek şekilde sürüm:

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")

Ayrıca, get_service ve get_type yöntem. Bu işlem, istemciyi başlatma:

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 anahtar kelime parametresi sağlanmazsa kitaplık varsayılan olarak en son sürüme güncelleyin. En son ve mevcut diğer sürümlerin güncellenmiş listesi arama sayfasının sol tarafındaki gezinme API Referansı belgeleri.