Primeiro você precisa obter um token para sua conta ( mais detalhes aqui )
O pacote yadirstat já está publicado em pypi - você pode instalá-lo usando pip
pip install yadirstat
O pacote permite que você obtenha as seguintes estatísticas:
- Estatísticas de campanha
- Estatísticas sobre termos de impressão (como palavras-chave e públicos)
- Estatísticas de consulta de pesquisa
Como as estatísticas são solicitadas:
yadirstat.yadirstat. ( , , , )
Algo como isso parecerá uma solicitação para obter estatísticas sobre consultas de pesquisa
query_report =yadirstat.yadirstat.query('','-1245234','2020-05-10','2020-07-15')
print(query_report)
E aqui está um pedido para obter estatísticas sobre as campanhas :
campaign_report = yadirstat.yadirstat.campaign('','-1245234','2020-05-10','2020-07-15')
print(campaign_report)
E aqui está um pedido para obter estatísticas sobre as condições das impressões :
criteria_report = yadirstat.yadirstat.criteria('','-1245234','2020-05-10','2020-07-15')
print(criteria_report)
Um exemplo do meu pedido:
from yadirstat import yadirstat
x = yadirstat.yadirstat.campaign('AgAAAxxxxxxxXXXXXXxxxxxXXXXXcI','BxxxxXXXX','2020-05-10','2020-07-15')
print(x)
A saída é semelhante a esta:

Se os dados não couberem durante a saída, você pode usar o seguinte:
import pandas as pd
pd.set_option('display.max_columns', None)
pd.set_option('display.expand_frame_repr', False)
pd.set_option('max_colwidth', 80)
pd.set_option('max_rows', 600000)
Na saída, obtemos um DataFrame.
Para uso completo, substituo "-" por "0"
Estrutura de dados
Pesquisas:
- Nome da campanha
- Inquerir
- Impressões
- Cliques
- Ctr
- Custo
- AvgCpc
- Taxa de conversão
- CostPerConversion
- Conversões
Campanhas *:
- Encontro
- Nome da campanha
- Impressões
- Cliques
- Ctr
- Custo
- AvgCpc
- BounceRate
- AvgPageviews
- Taxa de conversão
- CostPerConversion
- Conversões
- Encontro
Condições de exibição:
- Nome da campanha
- Critério
- Impressões
- Cliques
- Ctr
- Custo
- AvgCpc
- Encontro
* - Adicionar uma data como a última coluna permite que você não perca dados por datas ao transferir um DataFrame (por exemplo, ao transferir para o BigQuery, uma coluna com datas é perdida devido ao fato de estar indexada, para evitar problemas, acabei de duplicar esta coluna).
Por que essa estrutura? É assim que eu coleto estatísticas para enviar para o Google BigQuery e depois visualizá-las no Google DataStudio.
Eu ficaria feliz em ouvir sugestões para o desenvolvimento deste pacote e sua experiência na coleta de estatísticas.
PS:
- Isso também funciona com contas de agente.
- E com contas Elama