搜尋器robot技術

林堯彬發表於2020-04-04
凡上網者都用過搜尋引擎,Altavista、Infoseek 、Hotbot、網路指南針、北大天網和華好網景的ChinaOK等等,它們的索引資料庫涉及Internet上超過1億的頁面(Altavista和Hotbot),北大天網也收集了32萬個www頁面(國內),索引資料庫的建立需要訪問這些頁面然後進行索引,如何做到對如此多的頁面的訪問,現在的搜尋引擎無論是針對英文還是中文,都是採用網上機器人來實現網上搜尋的(Yahoo!是個例外)。

網上機器人  
網上機器人(Robot)又被稱作Spider、Worm或Random,核心目的是為獲取在Internet上的資訊。機器人利用主頁中的超文字連結遍歷Web,通過URL引用從一個HTML文件爬行到另一個HTML文件。網上機器人收集到的資訊可有多種用途,如建立索引、HTML檔案的驗證、URL連結驗證、獲取更新資訊、站點鏡象等。

機器人尋找WWW文件的演算法  
機器人要在網上爬行,因此需要建立一個URL列表來記錄訪問的軌跡。使用的是超文字,指向其它文件的URL是隱藏在文件中,需要從中分析提取URL;機器人一般都用於生成索引資料庫。所有WWW的搜尋程式都有類似步驟:
1) 機器人從起始URL列表中取出URL並從網上讀取其內容; 
2) 從每一個文件中提取某些資訊並放入索引資料庫中;
3) 從文件中提取指向其它文件的URL,並加入到URL列表中;
4) 重複上述3個步驟,直到再沒有新的URL發現或超出了某些限制(時間或磁碟空間);
5) 給索引資料庫加上查詢介面,向網上使用者釋出。 
  演算法有深度優先和廣度優先兩種基本的搜尋策略。
機器人以URL列表存取的方式決定搜尋策略:
1) 先進先出,則形成廣度優先搜尋。當起始列表包含有大量的Web伺服器地址時,廣度優先搜尋將產生一個很好的初始結果,但很難深入到伺服器中去。
2) 先進後出,則形成深度優先搜尋。這樣能產生較好的文件分佈,更容易發現文件的結構,即找到最大數目的交叉引用。 

結果處理技術
網頁評選的主要因素
搜尋引擎應該能夠找到與搜尋要求相對應的站點,並按其相關程度將搜尋結果排序。 這裡的相關程度是指搜尋關鍵字在文件中出現的頻度,最高為1。當頻度越高時,則認為該文件的相關程度越高。但由於目前的搜尋引擎還不具備智慧,除非你知道要查詢的文件的標題,否則排列第一的結果未必是"最好"的結果。所以有些文件儘管相關程度高,但並不一定是使用者更需要的文件。 
搜尋引擎是一個技術含量很高的電腦網路應用系統。它包括網路技術、資料庫技術、檢索技術、智慧技術等等。在這一方面,由於國外的很多先進技術是建立在西文核心的基礎上,所以我們還不能單純引進照搬照抄。作為中文搜尋引擎來講,如何來發揮我們在中文處理上的長處,發展出有我們自己版權的核心技術,使我們在中文搜尋引擎的競爭中佔有有利地位。

網頁評選的四個主要因素:
a. 網頁資料庫的大小,主要是人工瀏覽後定的。

b.檢索響應的時間,主要是程式裡得出的。
程式首先記下訪問搜尋引擎開始的時間,然後到取得記錄後,又記下當時的時間,然後把兩個時間減一下就得出了檢索響應的時間。

c.網頁的質量劃分主要也是由人工排定的。
搜尋引擎總是要將檢索結果返回給使用者,而結果顯示的好壞直接影響到搜尋引擎的使用效果。因此,結果顯示的內容組織,如何排序,是否提供足夠的相關資訊(內碼、檔案大小、檔案日期等),對使用者對檢索結果的判斷具有很大的影響。 

d.各個網站的相關度和以下因素有關:各個網站的相關度; 能夠區分搜尋結果的相關性(Pertinency)。
l 人為的對網站設定一個相關係數,如Yahoo 1.0,Goyoyo 0.94等;
l 連結,Summary中出現的關鍵詞的次數;
l 記錄返回時間,即檢索響應的時間

結果處理
(1) 按頻次排定次序
通常來說,如果一個頁面包含了越多的關鍵詞,其搜尋目標的相關性應該越好,這是非常合乎常理的解決方案。

(2) 按頁面被訪問度排序
在這種方法中,搜尋引擎會記錄它所搜尋到的頁面被訪問的頻率。人們訪問較多的頁面通常應該包含資訊比較多,或者有其它吸引人的長處。這種解決方案適合一般的搜尋使用者,而因為大部分的搜尋引擎都不是專業性使用者,所以這種方案也比較適合一般搜尋器使用。

(3) 進一步淨化(refine)結果
按照一定的條件對搜尋結果再進行優化,可以再選擇類別、相關詞等。

轉載於:https://www.cnblogs.com/tuyile006/archive/2006/10/17/531388.html

相關文章