2013-02-28 66 views
0

我使用Scrapy 0.16.4如何更改Scrapy中的用户代理和延迟时间?

我已经使用这个代码更改下载延迟和user-agent:

DOWNLOAD_DELAY = 2 
USER_AGENT = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22 AlexaToolbar/alxg-3.1" 

我不知道这是否是工作,但是,我仍然无法完全抓取该网站的所有网页。它总是给我一个随机刮掉的物品。有时候,我得到了13,有时我得到了30,有时候我得到了52个被抓的物品。

可能是什么问题?

+1

的问题可能是,该网站正在改变他们的数据库,或者也许你的互联网连接,由于你的室友下载山洪超时,但没有看到日志或你的代码,我们只能猜测。 – 2013-02-28 17:45:49

+0

这不是问题。问题是有那么多的数据,但我只能报废其中的一部分。不是全部。我的互联网连接速度非常快,我没有室友谁下载山洪。 – Vicheanak 2013-02-28 21:48:20

+0

我实际上是想用一种有趣的方式说:发布代码和日志文件输出。 – 2013-03-01 14:31:37

回答

0

也许该网站使用验证码阻止了您,您可以打印response.url并查看您是否获得引荐者,尝试将DOWNLOAD_DELAY设置为10,您可以将其设置为蜘蛛并打印网址,如果需要10秒来打印它的工作。

4

对于某些网站,每个IP可能存在访问限制。他们很可能不会累积不同用户代理(例如chrome,firefox,或safari等)的访问号码,因此您可以尝试使用动态用户代理池来缓解重度访问。

Here是一个链接,如何“在Scrapy使用随机用户代理”