2015-04-20 50 views
1

我正在運行Scrapy 0.24.4,並且遇到了相當多的網站,通常在5個請求中關閉爬網。每個請求都返回403或503,Scrapy放棄。我正在運行100個代理池,啓用了RotateUserAgentMiddlewareScrapy抓取與403/503封鎖

有誰知道一個網站如何快速識別Scrapy,即使代理和用戶代理髮生了變化? Scrapy不會將任何內容添加到請求頭文件中,這樣做是嗎?

+0

如果您在您的擦傷之間放置暫停,代理可能是不必要的。出於同樣的原因,您可能會從刮擦目標獲得錯誤響應,因爲您抓取的速度很快,或者代理自己正在返回這些代碼。你能否提供關於你爲什麼使用代理和輪換你的用戶代理的任何細節?在大多數情況下,這種行爲是不道德的,沒有更多的信息,你的刮目標有可能阻止你。 – halfer

回答

1

看來主要問題是沒有啓用cookie。啓用Cookie後,我現在獲得更多成功。謝謝。

1

一些網站合併需要運行的JavaScript代碼。 Scrapy不執行JavaScript代碼,所以Web應用程序真的很快就知道它是一個機器人。

http://scraping.pro/javascript-protected-content-scrape/

嘗試使用硒對那些返回403如果有硒作品抓取的網站,你可以假設,問題是在JavaScript。 我認爲crunchbase.com使用這種保護措施來防止刮傷。