如何设置Robots.txt或Apache仅在特定时间允许爬虫?

2024-04-02

由于 24 小时内流量分布不均匀,我希望在高峰时段禁止爬虫,在非繁忙时段允许爬虫。

有没有一种方法可以实现这一目标?

编辑: 感谢所有的好建议。

这是我们找到的另一个解决方案。

2bits.com 有一篇关于设置 IPTables 防火墙以限制来自某些 IP 地址的连接数量的文章。

文章 http://2bits.com/articles/strategies-dealing-resource-wasting-crawlers.html

IPTables的设置:

  • 使用 connlimit

在较新的 Linux 内核中,有一个用于 iptables 的 connlimit 模块。它可以这样使用:

iptables -I 输入 -p tcp -m connlimit --connlimit-above 5 -j REJECT

这会将来自每个 IP 地址的连接限制为不超过 5 个同时连接。这种“定量”连接,并防止爬虫同时访问站点。 *


您无法确定爬虫何时开始工作,但是Crawl-delay您也许可以减少他们请求页面的频率。这对于防止他们快速请求页面很有用。

例如:

User-agent: *
Crawl-delay: 5
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何设置Robots.txt或Apache仅在特定时间允许爬虫? 的相关文章

随机推荐