Existem muitos critérios que um site poderia usar para identificar possíveis raspadores. Alguns são mais propensos a falsos positivos do que outros.
- Agente do usuário. Muitos scrapers têm um cabeçalho
User-Agent:
que os identifica de forma fácil e confiável. Muitas das seguintes características também podem ser correlacionadas com oUser-Agent:
para verificar se o comportamento do agente do usuário postulado realmente corresponde ao que é esperado do navegador gráfico que ele pode estar tentando aparecer como. - intervalos de IP. Por exemplo, um bot operando fora do espaço de endereços IP da nuvem do Google ou Amazon é provavelmente automatizado (ou um nó de saída de VPN).
- Tempo de percurso. Um bot trivial visitará os links internos do site com um atraso fixo entre os "cliques" ou com uma variação que é tão pequena a ponto de não se passar por um usuário real.
- Ordem de percurso. Um bot trivial visitará os links internos do site na ordem em que os descobrir, enquanto um usuário visitará apenas um pequeno número de links em uma ordem menos previsível.
- Download de imagens. Um humano usando um navegador gráfico exibirá surtos de conexões paralelas um pouco previsíveis, dependendo também da largura de banda disponível e da configuração do navegador. Mas muitos bots só buscam uma página por vez, e talvez ignoram totalmente os gráficos.
- comportamento JavaScript. Um navegador real com JavaScript ativado executará cargas úteis do JavaScript. Alguns robôs de raspagem tentam imitar isso, mas muitos não, e aqueles que freqüentemente fazem um trabalho imperfeito.
- Caminhos alternativos. A fonte HTML pode conter links em seções que não serão expostas em um navegador específico com uma configuração específica; mas um bot trivial visitará links ocultos e expostos.