- A API oficial da Google Maps Platform não reproduz o ranking exibido no Google Maps: é preciso coletá-lo.
- Cada perfil vem com sua posição, nome, categoria, endereço, site, nota, número de avaliações e CID.
- Usos: monitoramento de SEO local, acompanhamento da concorrência e pesquisa de mercado, cidade por cidade.
Scraping do Google Maps ou API oficial?
A primeira confusão a desfazer: a API oficial da Google Maps Platform serve para exibir mapas, calcular rotas ou geocodificar endereços dentro de um aplicativo. A busca de lugares dela até retorna empresas, mas não na ordem que um usuário vê em uma pesquisa no Google Maps feita a partir de um local específico.
Fazer scraping do Google Maps é coletar a lista de perfis retornada por uma pesquisa (“restaurante”, “encanador”, “academia”) a partir de um local específico, na ordem em que o Google os exibe. São esses os dados usados no SEO local e na pesquisa de mercado.
Os dados disponíveis para cada perfil
| Campo | Conteúdo |
|---|---|
rank_type, rank_serp | A posição do perfil nos resultados |
title | O nome da empresa |
cid | O ID do Google do perfil, estável ao longo do tempo |
type | A categoria, por exemplo Restaurante |
address | O endereço |
website | O site |
rating, reviews | A nota média (máximo 5) e o número de avaliações |
status_label, status_detail | O status de funcionamento e seu detalhe, como o horário de funcionamento |
comment | O trecho exibido no perfil |
images | As imagens do perfil |
O CID é valioso: ele permite acompanhar o mesmo perfil de um levantamento para outro, mesmo que o nome ou o endereço mude.
A localização muda tudo
Uma pesquisa no Google Maps depende do lugar de onde é feita. “Encanador” pesquisado no centro de uma cidade e na periferia não retorna os mesmos perfis na mesma ordem. O parâmetro geolocation situa a pesquisa na cidade que você escolher, ou em uma posição GPS precisa com zoom opcional (-23.5505,-46.6333,16z). Falamos disso em SERPs geolocalizadas.
Exemplo de chamada
curl -X POST 'https://api.semscraper.com/v1/serp' \
-H 'Authorization: Bearer API_KEY' \
-H 'Content-Type: application/json' \
-d '[{"search_engine": "google_maps", "keyword": "restaurante", "depth": 1, "location": "br", "language": "pt", "geolocation": "Rio de Janeiro, State of Rio de Janeiro, Brazil"}]'A mesma requisição do Google Search, com search_engine definido como google_maps. O preço também é o mesmo: € 0,30 a cada 1.000 pesquisas com profundidade 1.
Três usos concretos
Monitorar o seu SEO local
Registre toda semana a posição dos seus perfis nas suas palavras-chave, cidade por cidade. Quando um perfil cai, muitas vezes é sinal de que um concorrente está acumulando avaliações, ou de que a categoria foi mal escolhida.
Acompanhar a concorrência local
Compare a nota, o número de avaliações e a categoria das empresas ao seu redor nos resultados. A diferença de avaliações em relação aos três primeiros dá uma meta.
Estudar um mercado
Cruzando uma categoria com uma lista de cidades, você obtém um mapeamento das empresas visíveis, com endereço e site: densidade da concorrência, regiões pouco atendidas, redes presentes.
Google Maps ou pacote local?
O pacote local, o bloco com alguns perfis exibido nos resultados normais do Google, não é a mesma coisa que uma pesquisa no Google Maps. Ele é retornado pela API do Google Search, com nota, número de avaliações e faixa de preço. A API do Google Maps retorna os perfis da própria pesquisa no Maps. As duas se complementam: o pacote local mede a visibilidade no Google, o Maps mede a posição no mapa.