Google fornisce una libreria client Python per interagire con l'API Ad Manager. Ti consigliamo di utilizzare la libreria client con PyPI.
Per iniziare, crea un nuovo progetto nell'IDE che preferisci o aggiungi la
dipendenza a un progetto esistente. Google pubblica gli artefatti della libreria client su
PyPI come google-ads-admanager.
requirements.txt
google-ads-admanager==0.10.4
Riga di comando
pip install google-ads-admanager
Configurare le credenziali
La libreria client Python utilizza OAuth2 e le Credenziali predefinite dell'applicazione (ADC) per l'autenticazione.
ADC cerca le credenziali in ordine nelle seguenti posizioni:
- variabile di ambiente
GOOGLE_APPLICATION_CREDENTIALS. - Credenziali utente configurate tramite Google Cloud CLI (gcloud CLI).
- Quando viene eseguito su Google Cloud, il service account collegato alla risorsa Google Cloud.
Per creare e configurare le credenziali ADC, consulta la sezione Autenticazione.
Effettuare la prima richiesta
Ogni servizio ha un oggetto ServiceClient con metodi sincroni e asincroni per ogni metodo REST. L'esempio seguente legge un Network
in modo sincrono.
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)
Per esempi di altri metodi e risorse, consulta il repository GitHub
googleapis/google-cloud-python.
Registra richieste e risposte HTTP
La libreria client Python utilizza la libreria standard Python logging
per registrare le richieste e le risposte HTTP. Per impostazione predefinita, la registrazione è disattivata.
Per attivare la registrazione, imposta la variabile di ambiente
GOOGLE_SDK_PYTHON_LOGGING_SCOPE. Questa variabile di ambiente configura
la gestione degli eventi di logging al livello logging.DEBUG o superiore.
# 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
In alternativa, puoi utilizzare il modulo Python logging:
import logging
from google.ads import admanager_v1
logger = logging.getLogger("google.ads.admanager_v1")
logger.addHandler(logging.StreamHandler())
logger.setLevel(logging.DEBUG)
Gestisci gli errori
Tutti gli errori API estendono la classe base GoogleAPIError.
Il campo Motivo dell'errore identifica in modo univoco i tipi di errore. Utilizza questo campo per determinare come gestire l'errore.
try:
network = client.get_network(request=request)
print(network)
except GoogleAPIError as e:
# Handle error
print(e.reason)
Gli errori dell'API Ad Manager includono anche un requestId univoco che puoi
fornire all'assistenza per ricevere aiuto con la
risoluzione dei problemi. L'esempio seguente estrae requestId da un 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'])
Configurare le impostazioni proxy
La libreria client Python rispetta le impostazioni delle variabili di ambiente http_proxy
e https_proxy.