如何通过robots.txt让HTTrack爬虫远离我的网站?

问题描述 投票:0回答:2

我正在维护网站 http://www.totalworkflow.co.uk,不确定 HTTrack 是否遵循 robots.txt 文件中给出的说明。如果有任何答案可以让 HTTrack 远离网站,请建议我实施,或者只告诉机器人名称,这样我就可以阻止这个垃圾爬行我的网站。如果 robots.txt 无法做到这一点,请推荐是否有其他方法可以让该机器人远离网站?


您是对的,垃圾邮件抓取工具没有必要遵循 robots.txt 文件中给出的指南。我知道 robots.txt 仅适用于正版搜索引擎。但是,如果开发人员对该应用程序进行硬编码以不跳过 robots.txt 指南(如果提供),则该应用程序 HTTrack 可能看起来是真实的。如果提供此选项,那么该应用程序对于预期目的将非常有用。好吧,让我们来谈谈我的问题,实际上我想找到的解决方案是让 HTTrack 爬虫远离,而不需要在网络服务器上硬编码任何内容。我尝试首先在网站管理员层面解决这个问题。不过,你的想法很值得将来考虑。谢谢你

robots.txt web-crawler
2个回答
1
投票

它应该遵守robots.txt,但是robots.txt是一个你不必遵守的东西(实际上找到你不希望其他人看到的垃圾邮件机器人是一个很好的事情)所以有什么保证(即使它现在服从机器人)在未来的某个时候不会有忽略所有 robots.txt 和元标记的选项?我认为更好的方法是配置服务器端应用程序来检测和阻止用户代理。用户代理字符串有可能被硬编码在爬网程序源代码中的某个位置,并且用户无法更改它以阻止您阻止该爬网程序。您所要做的就是编写一个服务器脚本来吐出用户代理信息(或检查服务器日志),然后根据这些信息创建阻止规则。或者,您也可以通过谷歌搜索已知“不良代理”的列表。要阻止支持 HTACCESS 的服务器上的用户代理,请查看此线程以了解一种方法:

被用户代理或空引用者阻止


0
投票

这可以通过两种方式来完成:

  1. 机器人.txt
  2. .htaccess

第一种方法:

用户代理:HTTrack

禁止:/

第二种方法:

重写引擎开启

RewriteCond %{HTTP_USER_AGENT} ^HTTrack

重写规则 ^.* - [F,L]

© www.soinside.com 2019 - 2024. All rights reserved.