2016-11-18 78 views
1

我正在創建一個簡單的履帶式裝載機,它將從預先定義的網站列表中刪除。我的簡單問題:是否有任何爬行器應專門使用的HTTP標頭?什麼被認爲是必需的,並且需要定義?履帶式標頭

回答

1

您至少應指定一個自定義用戶代理(如StormCrawler所示),以便您正在爬網的網站的網站管理員可以看到您是機器人並在需要時與您聯繫。

更重要的是,您的抓取工具應該遵循robots.txt指令,遏制對網站的請求頻率等......這導致我出現以下問題:爲什麼不重新使用和定製像StormCrawler這樣的現有開源抓取工具,Nutch還是Scrapy,而不是重新發明輪子?

+0

我只使用Scrapy,但需要很長時間才能設置。在node.js中使用請求和cheerio做東西看起來既快速又容易定製,以適應手頭的用例。 –

1

很高興告訴你是誰和你的意圖,以及如何抓住你。我運行一個網站,並在看的access.log爲Apaceh,下面的信息實際上有一個任務(如一些在StromCrawler代碼列出的那些的)記住:

  1. 代理名稱 - 只是品牌名稱的爬行器
  2. 代理軟件的版本 - 如果代理的早期版本出現問題,很高興看到它是演變版本
  3. 有關代理的信息的URL - 指向有關搜尋器的信息頁的鏈接。更多信息的目的,技術buildup等也是一個地方接觸到bot背後的人。

如果您退房Request fields,您會發現兩個興趣點:User-Agentfrom。第二個是電子郵件地址,但最後我檢查了它沒有出現在Apache2的access.log中。用戶代理automated agents應該包含有關代理的更多信息的頁面的名稱,版本和URL。在代理商名稱中使用「bot」這個詞也很常見。