Visualização das estatísticas do Yandex Direct com suas próprias mãos. Da API ao Data Studio

Como publicitário, preciso cuidar constantemente dos clientes. O Data Studio me ajuda com isso.

No entanto, os profissionais de publicidade raramente alocam orçamentos analíticos, então você tem que fazer isso sozinho.



O que você precisa fazer para visualizar o Yandex Direct no Data Studio:



  1. Obtenha um token de sua conta (para isso na ajuda do Yandex.Direct)
  2. Em Python, escreva uma solicitação para o servidor Yandex Direct
  3. Estatísticas de soma no quadro de dados do Pandas
  4. Envie dados para o Google Big Query
  5. Crie uma visualização no Data Studio com base nos dados do Google Big Query






Escreva um pedido para o servidor Yandex Direct e adicione os dados ao Pandas Data Frame





Eu costumava mexer nos pedidos e depois editar os dados para que pudessem ser enviados. Você pode tentar se precisar de um ajuste fino (eu escrevi sobre isso anteriormente aqui habr.com/ru/post/445734 )



Para o resto, há uma maneira muito mais simples - meu pacote python yadirstat. (uma revisão sobre habr.com/ru/post/512902 ). Ao utilizá-lo, você insere um token, login, datas e obtém um Data Frame pronto, no qual você não precisa alterar nada.



O código é parecido com este:



from yadirstat import yadirstat
x=yadirstat.yadirstat.campaign('FFFFFfffffFFFFggggGGGgg', 'client123123','2020-05-10','2020-07-15')
print(x)




Envie dados para o Google Big Query



Esta é a forma mais óbvia de coletar dados para posterior visualização no DataStudio, já que funcionam perfeitamente



aos pares.Para o envio utilizo o pacote “pandas_gbq”

O código fica assim:

import pandas_gbq
pandas_gbq.to_gbq(x, 'YD_Days.test', project_id='red-abstraction-99999999',if_exists='replace', progress_bar=None)




Por que os dados estão sendo substituídos? Porque as estatísticas na diretiva podem ser ajustadas ao longo do tempo, e se simplesmente adicionarmos novos termos, teremos discrepâncias nas estatísticas.



Agora vamos verificar se as informações foram para o Big Query. Se tudo correr bem, haverá um conjunto de campos de seus tipos







Crie uma visualização no Data Studio com base nos dados do Google Big Query





Para fazer isso, você pode criar imediatamente uma consulta no Big Query para obter todos os dados:

clique em “Enviar uma consulta para a tabela”, adicione “*” após SELECIONAR e remova o limite. A consulta é semelhante a: “SELECT * FROM` red-abstraction-239999.YD_Days.test`”



No Data Studio, conectando-se ao Google Big Query









Ao alterar a fonte, veremos os seguintes campos





É necessário alterar os seguintes campos para a agregação correta:



  • AvgCpc
  • Taxa de conversão
  • CostPerConversion
  • Ctr




Por que isso é feito? Vamos considerar o uso de CPC como exemplo

se tivermos duas linhas com os seguintes dados:

  • 100 cliques - Custo por clique 100 rublos - Custo 10.000
  • 2 cliques - Custo de um clique - 10 rublos - Custo de 20 rublos


A média usual diria que o CPC está em duas linhas 55

Portanto, para obter um CPC correto, divida todos os custos por todos os cliques. Nesse caso, o CPC será 98.2. Basta



ocultar esses campos e adicionar seus análogos:



  • CPC = SUM (custo) / SUM (cliques)
  • CTR = SUM (cliques) / SUM (impressões) * 100
  • % de conversões = SUM (conversões) / SUM (cliques) * 100
  • Custo de conversão = SUM (custo) / SUM (conversões)




Eu não uso a coluna "AvgPageviews". A



taxa de rejeição é uma coluna muito complexa devido ao fato de que Yandex usa estatísticas diferentes com base em alguns dados adicionais.

Resumindo, eu uso a fórmula, é ela que me dá os desvios mínimos do que mostra o Yandex:

% taxa de rejeição = SUM (Bounce_clicks) / (SUM (Clicks) / 100).

onde Bounce_clicks é o número de cliques devolvidos em cada uma das linhas.

Mas essa questão está além do escopo deste artigo :)




Nesse estágio, obtemos o seguinte conjunto de campos:







Nós visualizamos



Eu faço duas páginas para cada cliente: informações gerais e informações sobre chaves.



Vamos começar com a primeira página - informações gerais

Aqui eu posto:



  • Programação com despesas por dia
  • Tabela com estatísticas por data
  • Tabela com estatísticas por campanhas
  • Painel com estatísticas de ontem (cliques, custo, custo por clique)




Primeiro, coloque um intervalo de datas no canto para que os usuários possam escolher as datas para si próprios:



Agora, adicione uma programação com custos:



Defina as seguintes configurações:



Obtenha esse gráfico





Para uma tabela com datas, defina as seguintes configurações:



Para uma tabela com campanhas, altere o parâmetro "Data" para o nome das campanhas



para painéis Eu uso um resumo. Como resultado





, obtenho a seguinte página com estatísticas:





Obtemos estatísticas para palavras-chave:





Tudo é igual, só que agora a solicitação ficará assim:



import pandas_gbq

from yadirstat import yadirstat

x = yadirstat.yadirstat.criteria('AgAAAAI',client-12247235,'2020-05-10','2020-07-15')
print(x)

pandas_gbq.to_gbq(x, 'YD_criteria.test', project_id='red-abstraction-21239254613',if_exists='replace', progress_bar=None)



All Articles