2

我打算抓取一个特定的网站。我有 3000 个特定页面,我想每隔几个月抓取一次。我创建了一个爬虫,但我不想被禁止访问该网站。

有没有办法减少爬虫的攻击性或以某种方式隐藏它,以免被“注意到”或导致我正在爬取的提供商/网站出现问题?

延迟是可能的,但如果我将其设置为每页随机 10-30 秒延迟,那么它将永远持续下去。

制作可接受的爬虫的任何提示或指南?

4

2 回答 2

1

另一种解决方案是使用代理服务器提供商例如这个)并在每个X请求时轮换 IP 地址。这个特定的提供者有一个API可以即时检索 IP。如果谈到PHP , cURL可以很容易地用于此目的。

这种技术在大多数情况下都有效,但它需要更多的计划和调整。无论如何,您将面临一些限制。它可以是时间问题,也可以是每个时期的请求数量,这与时间问题几乎相同。或者您将需要更多代理服务器来满足您的时间要求。

并仔细阅读提供商的服务条款。该特定提供商不允许您被 Google 和其他一些网站禁止。否则您的帐户也将被禁止。

于 2012-12-25T13:52:52.507 回答
0

“可接受”是一个相对术语。一些网站所有者拥有足够的处理能力和带宽,他们认为每小时扫描 3000 页并不是“激进的”。一些网站所有者为带宽或处理能力而苦苦挣扎,无法跟上每天 3000 次的页面阅读量。

如果您想阅读页面并获取当前内容,那么您必须阅读这些页面。没有捷径可走。

于 2012-12-25T12:48:05.703 回答