Se os scrapers forem BOTS e não humanos, você pode tentar criar um diretório honeypot para rastrear e ser bloqueado (por endereço IP) automaticamente por meio de um script de "página padrão" nesse diretório. Os humanos poderiam facilmente se desbloquear, mas isso frustraria os bots, já que eles receberiam um erro "não autorizado" em qualquer outro acesso. Eu uso uma técnica como essa para bloquear robôs ruins que desobedecem o robots.txt, mas não bloquear permanentemente os humanos que compartilham o mesmo IP ou que "acidentalmente" navegam no script de bloqueio. Dessa forma, se um IP compartilhado for bloqueado, não será permanente. Veja como:
Eu configurei uma página padrão (com script) em um ou mais subdiretórios (pastas) bloqueados no robots.txt. Essa página, se carregada por um robô mal-comportado - ou por um humano intrometido - adiciona seu endereço IP a uma lista bloqueada. Mas eu tenho um manipulador de erro 403 ("não autorizado") que redireciona esses IPs bloqueados para uma página explicando o que está acontecendo e contendo um captcha que um ser humano pode usar para desbloquear o IP. Dessa forma, se um IP for bloqueado porque uma pessoa o usou uma vez para uma finalidade ruim, a próxima pessoa a obter esse IP não será permanentemente bloqueada - apenas incomodou um pouco. É claro que, se um IP em particular continuar ficando muito bloqueado por RE, posso tomar outras medidas manualmente para resolver isso.
Aqui está a lógica:
- Se o IP não estiver bloqueado, permita o acesso normalmente.
- Se o visitante navegar para a área proibida, bloqueie seu IP.
- Se o IP estiver bloqueado, redirecione todo o acesso ao formulário de "desbloqueio" que contém o captcha.
- Se o usuário inserir manualmente um captcha adequado, remova o IP da lista de bloqueios (e registre esse fato).
- Enxágüe, esfregue, REPETE as etapas acima para acessos futuros.
É isso! Um arquivo de script para manipular o aviso de bloqueio e desbloquear o envio do captcha. Uma entrada (no mínimo) no arquivo robots.txt. Um redirecionamento 403 no arquivo htaccess.