搜索引擎(Search Engine)是指按照一定的策略收集互聯(lián)網(wǎng)上的信息,利用特定的計算機程序,將信息組織和處理后顯示給用戶,為用戶提供檢索服務(wù)的系統(tǒng)。搜索引擎已經(jīng)成為人們上網(wǎng)的必備工具之一。
簡而言之,搜索引擎的工作方式就是抓取網(wǎng)站制作頁面、處理網(wǎng)頁并提供檢索服務(wù)。每個獨立的搜索引擎都有自己的網(wǎng)頁爬蟲(Spider),蜘蛛會跟隨網(wǎng)頁中的超鏈接,不斷地爬取網(wǎng)頁。被抓取的網(wǎng)頁稱為網(wǎng)頁快照。由于超鏈接在互聯(lián)網(wǎng)中的應(yīng)用非常普遍,理論上從一定范圍的網(wǎng)頁開始,就可以收集到絕大多數(shù)的網(wǎng)頁。搜索引擎抓取網(wǎng)頁后,需要做大量的預(yù)處理工作,才能提供檢索服務(wù)。其中,最重要的是提取關(guān)鍵字(Keywords)和建立索引文件。其他包括刪除重復(fù)的網(wǎng)頁、分析超鏈接和計算網(wǎng)頁的重要性。當用戶輸入關(guān)鍵字進行搜索時,搜索引擎會從索引數(shù)據(jù)庫中找到與該關(guān)鍵字匹配的網(wǎng)頁。為了方便用戶判斷,除網(wǎng)頁標題和網(wǎng)址(URL)外,還會提供網(wǎng)頁摘要等信息。1.搜索引單的歷史
所有搜索引擎的始祖是Archie,它是由加拿大麥吉爾大學(xué)的學(xué)生Alan Emtage、Peter Deutsch和Bill Wheelan于1990年發(fā)明的。雖然當時www還沒有廣泛使用,但是網(wǎng)絡(luò)中的文件傳輸還是相當頻繁的,而且由于大量的文件分散在各個零散的FTP主機上,查詢起來很不方便。 Alan Emtage 等人想開發(fā)一個文件名可以用來搜索文件的系統(tǒng),于是就有了Archie。 Archie 是一個可搜索的FTP 文件名列表。用戶必須輸入準確的文件名才能搜索,然后Archie會告訴用戶哪個FTP地址可以下載文件。所以Archie 是第一個自動索引來自Internet 上匿名FTP 站點的文件的程序,但它還不是真正的搜索引擎。由于阿奇的人氣,
受其啟發(fā),美國內(nèi)華達大學(xué)的研究人員于1993年開發(fā)了地鼠(Gopher FAQ)搜索工具維羅妮卡(Veronica FAQ)。Jughead是后來的另一款Gopher搜索工具。
一個搜索引擎一般由三部分組成:爬蟲(Spider、robot/spider)、索引生成器和查詢檢索器。專門用來檢索信息的“機器人”程序像蜘蛛一樣在網(wǎng)絡(luò)上爬行,所以搜索引擎的“機器人”程序被稱為“蜘蛛”程序。
世界上第一個Spider程序是由麻省理工學(xué)院的Matthew Gray開發(fā)的World Wide WebWanderer,用于跟蹤互聯(lián)網(wǎng)的發(fā)展規(guī)模。起初它只是用來統(tǒng)計互聯(lián)網(wǎng)上的服務(wù)器數(shù)量,后來發(fā)展到也可以抓取URL。
1994年7月,美國卡內(nèi)基梅隆大學(xué)的Michael Mauldin將John Leavitt的蜘蛛程序整合到其索引程序中,創(chuàng)建了Lycos。同年4月,美國斯坦福大學(xué)博士生David Filo與美籍華人楊致遠(Jerry Yang)共同創(chuàng)立超級目錄索引雅虎,并成功提出搜索引擎的概念深受人們喜愛。此后,搜索引擎進入了高速發(fā)展時期。目前,互聯(lián)網(wǎng)上有數(shù)百個帶名字的搜索引擎,它們檢索到的信息量已今非昔比。以谷歌為例,其數(shù)據(jù)庫中存儲的網(wǎng)頁已達30億! http://www.sina. com/
下面簡單介紹幾種常用的搜索引擎。
(1) 谷歌
Google搜索引擎的界面如圖6-18所示。谷歌最初只是斯坦福大學(xué)的一個小項目,BackRub。 1995年,博士生Larry Page開始研究搜索引擎設(shè)計,并于1997年9月15日注冊了域名T google.com。1997年底,在Sergey Brin、Scott Hassan和Alan Steremberg的參與下,BachRub開始了提供谷歌的演示版本。 1999年2月,谷歌完成了T從Alpha版到Beta版的改造。
Google在Page rank、動態(tài)摘要、網(wǎng)頁快照、Daily refresh、多文檔格式支持、地圖、股票、詞典等綜合搜索、多語言支持、用戶界面等功能上的創(chuàng)新,永久地改變了搜索引擎的定義. 2006年新版《韋氏大學(xué)辭典》收錄新詞100多個。在這本一向以保守、嚴肅著稱的詞典中,收錄了互聯(lián)網(wǎng)搜索引擎谷歌,意為“在互聯(lián)網(wǎng)上快速查找信息”。
(2) 百度
目前,百度(www.baidu.com)是全球最大的中文搜索引擎,其界面如圖6-19所示。 2000年1月,前Infoseek高級工程師李彥宏和他的朋友徐
勇(加州大學(xué)伯克利分校博士后)在北京中關(guān)村創(chuàng)立了百度(Baidu)公司。2000年5月,百度開始為門戶網(wǎng)站(如搜狐、新浪等)提供搜索技術(shù)服務(wù),之后發(fā)布Baidu. com搜索引擎Beta版,開始獨立提供搜索服務(wù)。(3) Alltheweb
誕生于1999年5月的Alltheweb是一個優(yōu)秀的全文搜索引擎,除了搜索常規(guī)網(wǎng)頁外,也能搜索新聞、圖片、視頻、音頻等內(nèi)容,其目標是做世界上最大、最快的搜索引擎,其界面如圖6-20所示。
(4) Ask. Com
Ask. Com是以提問方式進行搜索的搜索引擎,用戶可以輸人一個問題,搜索得到想要的答案,其界面如圖6-21所示.
3.搜索引的分類
搜索引擎常分為全文索引引擎、目錄索引和元搜索引擎三類。
(1)全文搜索引擎
全文搜索引擎是名副其實的搜索引擎,國外的代表有Google,國內(nèi)則有百度。它們從互聯(lián)網(wǎng)提取各個網(wǎng)站的信息(以網(wǎng)頁文字為主),建立起數(shù)據(jù)庫,并能檢索與用戶查詢條件相匹配的記錄,按一定的排列順序返回結(jié)果。
根據(jù)搜索結(jié)果來源的不同,全文搜索引擎可分為兩類,一類擁有自己的檢索程序,即“蜘蛛”程序或“機器人”程序,能自建網(wǎng)頁數(shù)據(jù)庫,搜索結(jié)果直接從自建的數(shù)據(jù)庫中調(diào)用,上面提到的Google和百度就屬于此類;另一類則是租用其他搜索引擎的數(shù)據(jù)庫,并按自定的格式排列搜索結(jié)果,如Lycos搜索引擎。
(2)目錄索引
顧名思義,目錄索引就是將網(wǎng)站分門別類地存放在相應(yīng)的目錄(Directory)中,因此用戶在查詢信息時,可選擇關(guān)鍵詞搜索,也可按分類目錄逐層查找.如果以關(guān)鍵詞搜索,則返回的結(jié)果與全文搜索引擎一樣,也是根據(jù)信息關(guān)聯(lián)程度排列網(wǎng)站(其中的人為因素要多一些)。
如果按分層目錄查找,某一目錄中網(wǎng)站的排名則由標題字母的先后順序決定(也有例外)。
與全文搜索引擎相比,目錄索引有許多不同之處。
首先,全文搜索引擎屬于自動網(wǎng)站檢索,而目錄索引的建立則完全依賴手工操作。用戶提交網(wǎng)站后,目錄編輯人員會親自瀏覽用戶的網(wǎng)站,然后根據(jù)一套自定的評判標準甚至編輯人員的主觀印象,決定是否接納用戶的網(wǎng)站。其次,搜索引擎收錄網(wǎng)站時,只要網(wǎng)站本身沒有違反有關(guān)的規(guī)則,一般都能登錄成功.而目錄索引對網(wǎng)站的要求則要高得多,有時即使登錄多次也不一定能成功。此外,在登錄搜索引擎時,人們一般不用考慮網(wǎng)站的分類問題,而登錄目錄索引時則必須將網(wǎng)站放在一個最合適的目錄中。最后,全文搜索引擎中各網(wǎng)站的有關(guān)信息都是從用戶網(wǎng)頁中自動提取的,所以用戶擁有更多的自主權(quán);而目錄索引則要求必須手工另外填寫網(wǎng)站信息,而且還有各種各樣的限制。更有甚者,如果工作人員認為用戶提交的網(wǎng)站目錄、網(wǎng)站信息不合適。他可以隨時對其進行調(diào)整,當然事先是不會和用戶商量的。目前,搜索引擎與目錄索引有相互融合滲透的趨勢。原來一些純粹的全文搜索引擎現(xiàn)在也提供目錄搜索,如Google就借用Open Directory目錄提供分類查詢。而像Yahoo!這些老牌目錄索引則通過與Google等搜索引擎合作擴大搜索范圍。
(3)元搜索引擎
元搜索引擎(Meta Search Engine)接收用戶的查詢請求后,同時在多個搜索引擎上搜索,并將結(jié)果返回給用戶。著名的元搜索引擎有InfoSpace,Dogpile, Vivisim。等,中文元搜索引擎的典型代表是搜星搜索引擎。在搜索結(jié)果排列方面,有的直接按來源排列搜索結(jié)果,如Dogpile,有的則按自定的規(guī)則將結(jié)果重新排列組合,如Vivisimo,目前搜索引擎正處于高速發(fā)展的階段,各主要大型搜索引擎都是基于分布式計算的。
簡單地說,分布式系統(tǒng)就是由多臺服務(wù)器共同協(xié)作組成的系統(tǒng),從而能夠檢索海量信息。以Google為例,它由上萬臺服務(wù)器組成,以提供較好的檢索性和抗壓性.抗壓性是指在一個幾秒鐘的時間段內(nèi),服務(wù)器處理大量并發(fā)請求的能力。
現(xiàn)在搜索引擎技術(shù)的主要發(fā)展空間在搜索的準確度上,除了傳統(tǒng)的網(wǎng)頁排序算法(指對搜索結(jié)果進行排序的規(guī)則),如Page rank, Hill top等,也與自然語言的研究進展密切相關(guān)。
我們專注高端建站,小程序開發(fā)、軟件系統(tǒng)定制開發(fā)、BUG修復(fù)、物聯(lián)網(wǎng)開發(fā)、各類API接口對接開發(fā)等。十余年開發(fā)經(jīng)驗,每一個項目承諾做到滿意為止,多一次對比,一定讓您多一份收獲!