O Google oferece uma biblioteca de cliente Python para interagir com a API Ad Manager. Recomendamos usar a biblioteca de cliente com o PyPI.
Para começar, crie um projeto no ambiente de desenvolvimento integrado da sua escolha ou adicione a dependência a um projeto atual. O Google publica artefatos de biblioteca de cliente no
PyPI como google-ads-admanager.
requirements.txt
google-ads-admanager==0.10.4
Linha de comando
pip install google-ads-admanager
Configurar credenciais
A biblioteca de cliente Python usa o OAuth2 e o Application Default Credentials (ADC) para autenticação.
O ADC procura credenciais na seguinte ordem:
- Variável de ambiente
GOOGLE_APPLICATION_CREDENTIALS. - Credenciais do usuário configuradas pela CLI do Google Cloud (CLI gcloud).
- Ao executar no Google Cloud, a conta de serviço anexada ao recurso do Google Cloud.
Para criar e configurar suas credenciais do ADC, consulte Autenticação.
Faça sua primeira solicitação
Cada serviço tem um objeto ServiceClient com métodos síncronos e assíncronos para cada método REST. O exemplo a seguir lê um Network
de forma síncrona.
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)
Para exemplos de outros métodos e recursos, consulte o repositório do GitHub
googleapis/google-cloud-python.
Registrar solicitações e respostas HTTP
A biblioteca de cliente do Python usa a biblioteca padrão logging
do Python para registrar solicitações e respostas HTTP. Por padrão, a geração de registros fica desativada.
Para ativar o registro, defina a variável de ambiente GOOGLE_SDK_PYTHON_LOGGING_SCOPE. Essa variável de ambiente configura o processamento de eventos de geração de registros no nível logging.DEBUG ou superior.
# 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
Como alternativa, use o módulo logging do Python:
import logging
from google.ads import admanager_v1
logger = logging.getLogger("google.ads.admanager_v1")
logger.addHandler(logging.StreamHandler())
logger.setLevel(logging.DEBUG)
Solucionar erros
Todos os erros de API estendem a classe de base GoogleAPIError.
O campo "motivo do erro" identifica de forma exclusiva os tipos de erro. Use esse campo para determinar como lidar com o erro.
try:
network = client.get_network(request=request)
print(network)
except GoogleAPIError as e:
# Handle error
print(e.reason)
Os erros da API Ad Manager também incluem um requestId exclusivo que você pode
fornecer ao suporte para receber ajuda com a
solução de problemas. O exemplo a seguir extrai o
requestId de um 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'])
Definir as configurações de proxy
A biblioteca de cliente Python respeita as configurações das variáveis de ambiente http_proxy e https_proxy.