本章主要介紹一下搜尋引擎蜘蛛都有哪些類型。了解類型之前要先知道什麼是搜尋引擎蜘蛛。百度百科上有相關解釋,天鴻用一個形象的表述重新說一下。以百度為例,大家要為什麼能在百度上搜到各類網站網頁的內容,是因為百度派出去的小弟—百度蜘蛛(baiduspider)跑到各大網站上去抓取網頁,經過層層過濾將百度認為有價值的網頁抓回自己的資料庫並進行相關性的排名,最後當用戶搜索的時候再呈現出來。但是網站極多,質量也參差不齊,對所有網站花費一樣的資源去抓取肯定也是不現實的,於是百度就搞出不同類型的蜘蛛對不同網站進行不同程度,不同廣度的抓取。按照現在網絡上所有Spider的作用及表現出來的特徵,可以將其分為三類:批量型Spider、增量型Spider和垂直型Spider。
1.批量型Spider
一般具有明顯的抓取範圍和目標,設置抓取時間的限制、抓取數據量的限制,或抓取固定範圍內頁面的限制等。當Spider的作業達到預先設置的目標就會停止。普通站長和SEO人員使用的採集工具或程序,所派出的Spider大都屬於批量型Spider,一般只抓取固定網站的固定內容,或者設置對某一資源的固定目標數據量,當抓取的數據或者時間達到設置限制後就會自動停止,這種Spider就是很典型的批量型Spider。
2.增量型Spider
增量型Spider也可以稱之為通用爬蟲。一般可以稱為搜尋引擎的網站或程序,使用的都是增量型Spider,但是站內搜尋引擎除外,自有站內搜尋引擎一般是不需要Spider的。增量型Spider和批量型Spider不同,沒有固定目標、範圍和時間限制,一般會無休止地抓取下去,直到把全網的數據抓完為止。
增量型Spider不僅僅抓取儘可能全的頁面,還要對已經抓取到的頁面進行相應的再次抓取和更新。因為整個網際網路是在不斷變化的,單個網頁上的內容可能會隨著時間的變化不斷更新,甚至在一定時間之後該頁面會被刪除,優秀的增量型Spider需要及時發現這種變化,並反映給搜尋引擎後續的處理系統,對該網頁進行重新處理。當下百度、Google網頁搜索等全文搜尋引擎的Spider,一般都是增量型Spider。
3.垂直型Spider
垂直型Spider也可以稱之為聚焦爬蟲,只對特定主題、特定內容或特定行業的網頁進行抓取,一般都會聚焦在某一個限制範圍內進行增量型的抓取。此類型的Spider不像增量型Spider一樣追求大而廣的覆蓋面,而是在增量型Spider上增加一個抓取網頁的限制,根據需求抓取含有目標內容的網頁,不符合要求的網頁會直接被放棄抓取。
對於網頁級別純文本內容方面的識別,現在的搜尋引擎Spider還不能百分之百地進行準確分類,並且垂直型Spider也不能像增量型Spider那樣進行全網際網路爬取,因為那樣太浪費資源。所以現在的垂直搜尋引擎如果有附屬的增量型Spider,那麼就會利用增量型Spider以站點為單位進行內容分類,然後再派出垂直型Spider抓取符合自己內容要求的站點;沒有增量型Spider作為基礎的垂直搜尋引擎,一般會採用人工添加抓取站點的方式來引導垂直型Spider作業。當然在同一個站點內也會存在不同的內容,此時垂直型Spider也需要進行內容判斷,但是工作量相對來說已經縮減優化了很多。
現在一淘網、優酷下的搜庫、百度和Google等大型搜尋引擎下的垂直搜索使用的都是垂直型Spider。雖然現在使用比較廣泛的垂直型Spider對網頁的識別度已經很高,但是總會有些不足,這也使得垂直類搜尋引擎上的SEO有了很大空間。
總而言之,搜尋引擎蜘蛛劃分不同的蜘蛛類型就是秉著一個原則:好站多抓深抓,破站少抓淺抓甚至屏蔽不抓。