2013-03-30 109 views
3

我有很好的使用c#和vb.net的開發經驗,但我需要一些指導。我想開發像搜索引擎一樣的蜘蛛和爬蟲,但我不知道如何:爬蟲/蜘蛛檢測新網站

  1. 如何檢測網絡中的新網站?就像Google檢測並抓取網站一樣,因爲它已啓動?
  2. 如何檢測添加到任何網站的新頁面?我可以檢測並解析網站的所有頁面,但這是時間過程嗎?如何檢測新添加的頁面?
  3. 如何檢測修改後的頁面?
+0

您忘記了'java'標籤。 –

+0

這是一個非常不同的問題,沒有顯示任何努力或任何。無論如何,祝您好運 – samayo

+0

檢測您已經抓取的其他網站與該網站的鏈接是一種策略。 –

回答

0

主要有兩種方式:

  1. 站點地圖(谷歌這個詞來了解更多) ,這也可以指示何時更新頁面。
  2. 注意到您正在爬網的另一頁上的新網站/頁面的鏈接。

對於您已經知道的頁面,您可以使用「If-Modified-Since」HTTP標頭,它告訴服務器返回304響應,如果頁面自指定日期起未發生更改。這可以節省您下載和解析頁面,如果它沒有改變,雖然顯然你仍然不得不提出要求。這就是爲什麼站點地圖是首選的,您可以立即獲得有關整個站點的信息。當然網站不需要提供它們。

0

我不知道太多的C#ID開始編碼的東西,運行網站:「www.spiderthissite.com」在谷歌和記錄/位置/編號也使得通過鏈接的網頁的HTML尋找鏈接和文件夾位置。

但是,您的問題很廣泛,只需先給它一個爆炸,然後當你在某個點卡住時來到這裏。