控錄蜘蛛和控尋機器人
搜索引擎要知道網上的新生事物,就是派人出去搜集。但是靠人工是不可能完成這個任務的。所以,搜索引擎的發明者就設計了計算機程序,派它們來執行這個任務。
探測器有多種叫法,也叫crawler(爬行器)、spider(蜘蛛)、robot(機器人).這些形象的叫法是描繪搜索引擎派出的蜘蛛機器人爬行在互聯網上探測新的信息。Google把它的控測器叫做googlebot,百度就叫Baiduspider,MSN叫MSNbot,而Yahoo則稱為Slurp.這個控測器實際上是人們編制的計算機程序,由它不分晝夜地進入訪問各個網站,取回網站內容、標簽、圖片等,然后依照搜索引擎的算法給它們制定成索引。所以,這可不是“爬行”而是以光速來訪問的。
一個搜索引擎會同時派出許多控測器。這些“機器人”或者從站主直接呈遞的網站URL去訪問,或者由一個網絡用戶所裝的搜索引擎工具欄(比如GOOgle工具欄)得知用戶去的網站,或者是從一個網站中指向另一個網站的鏈接過去?販y器不一定是從網站的首頁進入訪問,所以,如果你要探測器訪問你其他的網頁,那么這個進入頁就需要和其他網頁相連。達到這個目的最容易的辦法就是在每一頁都加入指向首頁的鏈接。
但是,探測器對許多網站是不能完整取回信息的,這個大多是由于網站的設計沒有按照搜索引擎控測器的思路來進行優化。比如,如果一個網頁比較大,控測器也只能截取網頁的首部,而且只能跟著少量的鏈接走。Google目前能夠吸收100KB的文件,Yahoo會多一點。這個可以通過實驗來檢驗。將一個搜索關鍵詞放在一個很長的網頁(約160KB)最后部分,然后看Google的緩存(cache)中顯現網頁的大小是多少。如果不出意料,Google的cache說這個網頁只有101KB。很顯然,一部分內容沒被Google抓走。
這個現象告訴我們不要將網頁設計得很長、很大。將大的網頁拆成若干小的網頁具有很多的好處:
1、 使得網頁容易被探測器抓取。
2、 更容易建立合理的網站內部鏈接關系。
3、 每個網頁可以更加集中在重要的關鍵詞語。
4、 節省服務器的帶寬。
5、 方便瀏覽者的閱讀。