O que o Googlebot vê ao rastrear o Discourse

TL:DR, é semi-humanamente possível replicar o rastreamento do Googlebot no Discourse. Veja como começar…

Torne-se um com o Googlebot

  1. Abra uma janela anônima (sempre comece do zero)
  2. Abra o DevTools
  3. Abra as Condições de Rede no DevTools
  4. Desmarque ‘Usar padrão do navegador’
  5. No menu suspenso, escolha Googlebot Smartphone
  6. Em seguida, acesse https://meta.discourse.org (parece bem diferente; não é nada demais porque seu Googlebot e os bots não se importam)
  7. Vá em Exibir > Desenvolvedor > Exibir Código-Fonte
  8. Copie e cole em algum arquivo .html

Bom trabalho! Você criou o arquivo que os humanos referenciam para ver o que o Googlebot rastreou e cacheou.

O trabalho do Googlebot está feito. Agora é hora de renderizar o arquivo em cache em um navegador.

Torne-se um com o Chrome

  1. Abra o terminal e execute npx http-server
  2. Navegue até o arquivo
  3. Abra o Chrome DevTools
  4. No painel Elementos, clique com o botão direito em <html>... e selecione Copiar outerHTML.
  5. Esse é o conteúdo que será indexado, não cacheado, indexado.

Em resumo, o Googlebot recupera o HTML e o Chrome o renderiza. O HTML renderizado é ouro. Certifique-se de que seu conteúdo valioso e links estejam aparecendo lá.

2 curtidas

Qual é o propósito das etapas em “Torne-se um com o Chrome”?

Você não poderia fazer a etapa “Copiar outerHTML” em vez da etapa 7 na primeira lista?

Acho que você também pode buscá-lo com curl:

curl -s https://meta.discourse.org/ > page.html

(Ele conterá as classes \"crawler\".)

Em seguida, abra o arquivo page.html em um navegador.

Ou para inspecionar o código em um editor:

curl -s https://meta.discourse.org/ | vim -
2 curtidas

O HTML em cache é renderizado no Chrome (sem interface gráfica). Quando renderizado, conteúdo e links suplementares podem ser introduzidos via JavaScript, no DOM. O Google levará em consideração as informações que renderizar para fins de indexação.

É assim que o Googlebot obtém conteúdo de aplicativos com uso intensivo de JavaScript. Vá ao Google e pesquise algo que você sabe que renderiza conteúdo apenas com JavaScript > clique no ícone de 3 pontos > clique no botão Cache > clique em Ver código-fonte > copie-o e renderize-o no Chrome para ver qual conteúdo aparece no DOM.

Observação: atualize quaisquer caminhos relativos (recursos CSS e JS) para absolutos antes de renderizá-los no Chrome ^^

Usar o curl facilita, legal!

Certifique-se de incluir a string do user agent do Googlebot, por exemplo, Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html). O servidor pode enviar um HTML diferente para o Googlebot.

Acho que é a mesma saída, mas não custa nada adicionar o user agent. Não tenho certeza sobre o Chrome, mas no Firefox você pode clicar com o botão direito na solicitação na guia de rede e escolher “copiar como curl” para um conjunto completo de cabeçalhos que imitarão uma solicitação de navegador.