2013-02-28 70 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使用隨機用戶代理」