SE::Google::KeywordPlanner::SearchVolume - estimativa do volume de buscas e outras métricas de palavras-chave do Google Keyword Planner

Visão geral do scraper
SE::Google::KeywordPlanner::SearchVolume – scraper para estimar volumes de busca de palavras-chave com o Google Keyword Planner. Uma grande quantidade de dados está disponível para uso: média de buscas mensais, alterações no volume por trimestre e por ano, lance mínimo e máximo, nível de concorrência. Nas configurações de extração de dados, você pode especificar o idioma, a localização, a rede de anúncios e o período de amostragem dos dados. Também está disponível o modo em lote, graças ao qual é possível obter dados para 10.000 palavras-chave de uma só vez em uma única consulta ao serviço, acelerando significativamente a extração de dados.Graças ao processamento em múltiplas threads do A-Parser em combinação com o modo de pacote, a velocidade de processamento de consultas pode atingir várias dezenas de milhares de consultas por minuto.
A funcionalidade do A-Parser permite salvar as configurações de extração de dados do scraper SE::Google::KeywordPlanner::SearchVolume para uso posterior (predefinições), definir um cronograma de extração de dados e muito mais.
A preservação dos resultados é possível na forma e estrutura que você necessita, graças ao poderoso motor de modelos integrado Template Toolkit que permite aplicar lógica adicional aos resultados e exibir dados em vários formatos, incluindo JSON, SQL e CSV.
Dados coletados
- Média de pesquisas mensais para a palavra-chave pesquisada
- Mudança trimestral
- Mudança anual
- Nível de concorrência
- Lances mínimos e máximos
- Tendências de volume de pesquisa para o período selecionado
- Mês e ano
- Número total de consultas
- Número de consultas apenas de dispositivos móveis (indisponível no modo de pacote)
Recursos
- Suporte para autenticação por login-senha ou através da substituição de cookies e cabeçalhos
- Determinação do grau de precisão do $volume - valor exato/arredondado
- Suporte ao modo de pacote, ativado por padrão
- Suporte para múltiplas contas (para selecionar a conta desejada, o seu
ocid(uscid)deve ser obrigatoriamente especificado)
Casos de uso
- Coleta da média de pesquisas mensais, lances mínimos e máximos, avaliação da concorrência
- Análise de tendências
Configuração
Existem duas opções para configurar o scraper:
- especificar e-mail\senha da conta do Keyword Planner
- autenticar-se no navegador e copiar os valores necessários
Tenha cautela com o número de threads. Recomenda-se especificar um número pequeno de threads, sendo perfeitamente possível a extração de dados sem proxy.
Autenticação via e-mail e senha
É necessário sobrescrever as opções E-mail e Password, indicando os dados da sua conta Keyword Planner. Uma campanha deve obrigatoriamente estar criada na conta.
Spoiler: (Solução) Login failed TypeError: Cannot read property '1' of null
No caso de ocorrer este erro, você precisa remover sua conta Google do navegador e fazer login novamente.

Autenticação no navegador e substituição de cabeçalhos no scraper
É necessário autenticar-se no navegador através do link https://ads.google.com/aw/keywordplanner/home, criar a primeira campanha, se não houver uma anterior, obter os seguintes dados e especificá-los nas configurações do scraper:
Os cookies podem ser especificados de duas formas:
- Especificar todos os cookies na opção All cookies
- Especificar os valores dos cookies para as opções __Secure-3PSID, __Secure-3PSIDTS (__Secure-3PSIDTS deve ser especificado caso o authuser na conta seja igual a 0)
Outros cabeçalhos:
- Valor do cabeçalho x-framework-xsrf-token
- Valor do parâmetro ocid ou uscid da URL
- Valor do parâmetro authuser da URL
Spoiler: Como encontrar os parâmetros necessários


Consultas
Como consultas, devem ser especificadas palavras-chave, uma por linha. Exemplo de consultas:
coca-cola
parsing
peace
starlink
test
O modo de pacote é suportado e ativado pela opção Bulk (packet) mode. Neste modo, o scraper enviará pacotes de 10.000 palavras-chave em cada consulta ao serviço. Neste modo, não são coletados dados sobre o número de consultas de dispositivos móveis ($trends.$i.mobile). O modo de pacote está ativado por padrão.
Substituições de consultas
Você pode usar macros integradas para substituição automática de subconsultas a partir de arquivos; por exemplo, se quisermos adicionar uma lista de outras palavras a cada consulta, especificamos algumas consultas principais:
fantasy
tower defense
rpg
No formato de consultas, especificamos a macro de substituição de palavras adicionais do arquivo keywords.txt; este método permite aumentar a variabilidade das consultas significativamente:
{subs:keywords} $query
Esta macro criará tantas consultas adicionais quantas estiverem no arquivo para cada consulta de pesquisa original, o que resultará em [quantidade de consultas originais] x [quantidade de consultas no arquivo Keywords] = [quantidade total de consultas] como resultado da execução da macro.
Por exemplo, se o arquivo keywords.txt contiver:
free
online
No final, a macro de substituições transformará 3 consultas principais em 6:
free fantasy
online fantasy
free tower defense
online tower defense
free rpg
online rpg
Opções de exibição de resultados
O A-Parser suporta formatação flexível de resultados graças ao motor de modelos integrado Template Toolkit, o que permite exibir resultados em formato livre, bem como estruturado, como CSV ou JSON
Saída padrão
Formato do resultado:
$query: $volume\n
Exemplo de resultado com a exibição da palavra-chave e sua média de pesquisas mensais:
coca-cola: 3350000
parsing: 165000
peace: 673000
starlink: 1830000
test: 7480000
Saída em tabela CSV
Formato geral do resultado:
[% tools.CSVline(query, p1.volume, p1.min_bid, p1.max_bid) %]
Nome do arquivo:
$datefile.format().csv
Texto inicial:
Keyword,Volume,"Min bid","Max bid"
No Formato geral de resultados, aplica-se o motor de modelos Template Toolkit e a ferramenta tools.CSVline para a exibição dos dados.
No nome do arquivo de resultados, basta alterar a extensão do arquivo para csv.
Para que a opção "Prepend text" esteja disponível no Editor de tarefas, é necessário ativar "More options". No "Prepend text", escrevemos os nomes das colunas separados por vírgula e deixamos a segunda linha vazia.
Salvando em formato SQL
Formato do resultado:
[% "INSERT INTO volumes VALUES('" _ query _ "', '" _ volume _ "')\n" %]
Exemplo de resultado:
INSERT INTO volumes VALUES('perfume', '50000')
INSERT INTO volumes VALUES('eyfel perfume', '5000')
INSERT INTO volumes VALUES('memo marfa', '5000')
Dump de resultados em JSON
Formato geral do resultado:
[% IF notFirst;
",\n";
ELSE;
notFirst = 1;
END;
obj = {};
obj.keyword = query;
obj.volume = p1.volume;
obj.json %]
Texto inicial:
[
Texto final:
]
Exemplo de resultado:
[{"keyword":"perfume","volume":"50000"},
{"keyword":"eyfel perfume","volume":"5000"},
{"keyword":"memo marfa","volume":"5000"}]
Mais detalhes sobre a saída de resultados em JSON estão descritos neste artigo.
Configurações possíveis
| Parâmetro | Valor padrão | Descrição |
|---|---|---|
| All cookies | Especificação de todos os cookies | |
| Cookie "__Secure-3PSID" | Cookie "__Secure-3PSID" | |
| Cookie "__Secure-3PSIDTS" | Cookie "__Secure-3PSIDTS" | |
| Header "x-framework-xsrf-token" | Cabeçalho "x-framework-xsrf-token" | |
| Url parameter "ocid"("uscid") | Parâmetro "ocid"("uscid") | |
| Url parameter "authuser" | 0 | Parâmetro "authuser" |
| E-mail para autenticação no Keyword Planner | ||
| Password | Senha para autenticação no Keyword Planner | |
| Recovery e-mail | E-mail para recuperação de acesso | |
| Browser headless (debug auth) | ☑ | Modo headless para o navegador usado na autenticação via login-senha |
| Log Login Screenshot (debug auth) | ☐ | Criação de captura de tela da página de autenticação e exibição no log da tarefa |
| Date from | Last 12 months | Data de |
| Date to | Last 12 months | Data até |
| Language | English | Idioma |
| Search networks | Google | Rede de pesquisa |
| Location code | Localização (aqui deve-se indicar o id da localização, que pode ser obtido na primeira coluna desta tabela (cópia)) | |
| Delete created plan | ☑ | Excluir plano criado |
| Bulk (packet) mode | ☑ | Ativação do modo de pacote |