Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Per iniziare a sviluppare applicazioni API Bing Ads con Python, è possibile iniziare con gli esempi forniti o seguire una delle procedure dettagliate per un'applicazione Web o desktop .
Saranno necessarie credenziali utente con accesso a Microsoft Advertising in ambiente di produzione o sandbox. Per l'ambiente di produzione è necessario un token per sviluppatori di produzione. Tutti i client sandbox possono usare il token per sviluppatori sandbox universale, ad esempio BBD37VB98. Per altre informazioni, vedere Introduzione all'API Bing Ads e alla sandbox.
Per eseguire l'autenticazione tramite OAuth, è anche necessario registrare un'applicazione e ottenere l'identificatore client corrispondente. È anche necessario prendere nota del segreto client e dell'URI di reindirizzamento se si sviluppa un'applicazione Web. Per altre informazioni sulla registrazione di un'applicazione nell'ambiente di produzione e sul flusso di concessione del codice di autorizzazione, vedere Autenticazione con OAuth e Autenticazione con gli SDK. Anche se nell'ambiente di produzione è necessario usare il proprio ID applicazione (ovvero l'ID client), tutti i clienti di Microsoft Advertising possono usare l'ID client "Tutorial Sample App" pubblico nella sandbox, ad esempio 00001111-aaaa-2222-bbbb-3333cccc444444. Per altre informazioni, vedere Sandbox.
Dipendenze
Bing Ads Python SDK supporta Python 3.8 o versione successiva. È consigliabile installare ed eseguire una delle versioni supportate.
L'SDK basato su REST dipende dai pacchetti seguenti, che vengono installati automaticamente:
- pydantic (>=2.0.0): modelli di dati tipizzati per tutti gli oggetti API
- requests — Trasporto HTTP
- typing-extensions (>=4.0.0)
Installare l'SDK
Per installare Bing Ads Python SDK per la prima volta, eseguire quanto segue dall'IDE o dal prompt della riga di comando.
pip.exe install msads
Per verificare che Sia installato Bing Ads Python SDK, eseguire quanto segue. Verrà visualizzato msads (<versione>) nell'elenco di output.
pip.exe list
Se è già installato Bing Ads Python SDK, è possibile eseguire questo comando per ottenere i bit più recenti.
pip.exe install --upgrade msads
Procedure dettagliate
Dopo aver installato Bing Ads Python SDK , è possibile scaricare gli esempi da GitHub o seguire una delle procedure dettagliate dell'applicazione per una procedura dettagliata: Applicazione Web api Bing Ads in Python o Procedura dettagliata: Applicazione desktop api Bing Ads nell'applicazione Python .
Uso di REST SDK
Bing Ads Python SDK comunica con l'API REST di Microsoft Advertising usando classi client generate da OpenAPI supportate da modelli Pydantic . Si interagisce con l'API tramite un'istanza di ServiceClient , che gestisce automaticamente le intestazioni di autenticazione, il routing degli endpoint e l'invio del metodo.
Configurazione di un ServiceClient
Creare un ServiceClient passando il nome del servizio, la versione dell'API, i dati di autorizzazione e l'ambiente di destinazione.
from bingads.service_client import ServiceClient
campaign_service = ServiceClient(
service='CampaignManagementService',
version=13,
authorization_data=authorization_data,
environment=ENVIRONMENT, # 'production' or 'sandbox'
)
Sono supportati i nomi di servizio seguenti: CampaignManagementService, BulkService, ReportingService, CustomerManagementService, CustomerBillingServicee AdInsightService.
Creazione di oggetti
Importare le classi del modello direttamente da openapi_client.models.campaign e crearne un'istanza con argomenti di parole chiave. Non esistono ArrayOf* tipi wrapper: usare elenchi Python normali ovunque un campo accetti più elementi.
from openapi_client.models.campaign import *
campaign = Campaign(
name="Women's Shoes",
daily_budget=50.0,
budget_type=BudgetLimitType.DAILYBUDGETSTANDARD,
time_zone='PacificTimeUSCanadaTijuana',
languages=['All'],
)
Per i tipi derivati, ad esempio ExpandedTextAd, creare direttamente un'istanza della sottoclasse concreta. Non sono necessarie chiamate factory o codifica speciale. I parametri personalizzati e altri oggetti annidati possono essere impostati inline tramite il costruttore .
expanded_text_ad = ExpandedTextAd(
title_part1='Contoso',
title_part2='Quick & Easy Setup',
title_part3='Seamless Integration',
text='Find New Customers & Increase Sales!',
text_part2='Start Advertising on Contoso Today.',
path1='seattle',
path2='shoe sale',
# With FinalUrls you can separate the tracking template, custom parameters,
# and landing page URLs.
final_urls=['https://www.contoso.com/womenshoesale'],
# Final Mobile URLs can also be used if you want to direct the user to a
# different page for mobile devices.
final_mobile_urls=['https://mobile.contoso.com/womenshoesale'],
# Set custom parameters that are specific to this ad.
url_custom_parameters=CustomParameters(
parameters=[
CustomParameter(key='promoCode', value='PROMO' + str(index)),
CustomParameter(key='season', value='summer'),
]
),
)
ads = [expanded_text_ad]
Chiamata di operazioni del servizio
Compilare un oggetto richiesta e passarlo al metodo corrispondente in ServiceClient. I metodi usano snake_case denominazione.
add_request = AddCampaignsRequest(
account_id=authorization_data.account_id,
campaigns=[campaign],
)
response = campaign_service.add_campaigns(add_campaigns_request=add_request)
campaign_id = response.campaign_ids[0]
Autenticazione
REST SDK usa l'intestazione HTTP standard Authorization: Bearer <token> . Il flusso OAuth, ovvero la concessione del codice di autorizzazione, la gestione dei token di aggiornamento e l'archiviazione dei token, è identico a SOAP SDK. Per informazioni dettagliate, vedere Autenticazione con gli SDK.
Gestione di errori
Gli errori del servizio vengono generati a partire ApiException dal openapi_client pacchetto. L'eccezione espone il codice di stato HTTP e il corpo della risposta di errore.
from openapi_client.exceptions import ApiException
try:
response = campaign_service.GetCampaignsByAccountId(
AccountId=authorization_data.account_id,
CampaignType='Search'
)
except ApiException as ex:
print(f"HTTP status {ex.status}: {ex.body}")
Per informazioni sull'analisi degli errori batch restituiti nel corpo della risposta, vedere Gestione di errori ed eccezioni del servizio.
Vedere anche
Librerie client dell'API Bing Ads
Esempi di codice API Bing Ads
Indirizzi del servizio Web dell'API Bing Ads
Gestione di errori ed eccezioni del servizio
Sandbox