資源描述:
《開源網(wǎng)絡(luò)爬蟲在垂直搜索引擎應(yīng)用》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、開源網(wǎng)絡(luò)爬蟲在垂直搜索引擎應(yīng)用 引開源網(wǎng)絡(luò)爬蟲在垂直搜索引擎應(yīng)用 引言 在信息化時(shí)代,針對(duì)通用搜索引擎信息量大、查詢準(zhǔn)度和深度兼差等缺點(diǎn),垂直搜索引擎已進(jìn)入了用戶認(rèn)可和使用周期。垂直搜索是針對(duì)某一個(gè)行業(yè)的專業(yè)搜索引擎,是對(duì)網(wǎng)頁庫中的某類專門的信息進(jìn)行一次整合,定向分字段抽取出需要的數(shù)據(jù)進(jìn)行處理后再以某種形式返回給用戶[1]。相比通用搜索引擎則顯得更加專注、具體和深入。目前,垂直搜索引擎多用于行業(yè)信息獲取和特色語料庫建設(shè)等方面,且已卓見現(xiàn)實(shí)深遠(yuǎn)成效。 網(wǎng)絡(luò)爬蟲是一個(gè)自動(dòng)提取和自動(dòng)下載網(wǎng)頁的程序,可為搜索引擎從互聯(lián)網(wǎng)上下載網(wǎng)頁,并根據(jù)既定的抓取目標(biāo),有選擇地訪問互聯(lián)網(wǎng)上的網(wǎng)
2、頁與相關(guān)的鏈接,獲取所需要的信息。按照功能用途,網(wǎng)絡(luò)爬蟲分為通用爬蟲和聚焦爬蟲,這是搜索引擎一個(gè)核心組成部分?! ?聚焦爬蟲的工作原理及關(guān)鍵技術(shù)分析 聚焦爬蟲的工作原理 聚焦爬蟲是專門為查詢某一主題而設(shè)計(jì)的網(wǎng)頁采集工具,并不追求大范圍覆蓋,而是將目標(biāo)預(yù)定為抓取與某一特定主題內(nèi)容相關(guān)的網(wǎng)頁聯(lián)盟,如此即為面向主題的用戶查詢準(zhǔn)備數(shù)據(jù)資源。垂直搜索引擎可利用其實(shí)現(xiàn)對(duì)網(wǎng)頁主題信息的挖掘以及發(fā)現(xiàn),聚焦爬蟲的工作原理是: 爬蟲從一個(gè)或若干起始網(wǎng)頁URL鏈接開始工作; 通過特定的主題相關(guān)性算法判斷并過濾掉與主題無關(guān)的鏈接; 將有用鏈接加入待抓取的URL隊(duì)列; 根據(jù)一定的搜索策略從待
3、抓取URL隊(duì)列中選擇下一步要抓取的網(wǎng)頁URL; 重復(fù)以上步驟,直至滿足退出條件時(shí)停止[2]?! 【劢古老x的幾個(gè)關(guān)鍵技術(shù) 根據(jù)聚焦爬蟲的工作原理,在設(shè)計(jì)聚焦爬蟲時(shí),需要考慮問題可做如下論述?! 〈ト【W(wǎng)站目標(biāo)的定義與描述的問題 開發(fā)聚焦爬蟲時(shí),應(yīng)考慮對(duì)于抓取目標(biāo)的定義與描述,究竟是帶有目標(biāo)網(wǎng)頁特征的網(wǎng)頁級(jí)信息,還是針對(duì)目標(biāo)網(wǎng)頁上的結(jié)構(gòu)化數(shù)據(jù)。前者因其具有結(jié)構(gòu)化的數(shù)據(jù)信息特征,在爬蟲抓取信息后,還需從結(jié)構(gòu)化的網(wǎng)頁中抽取相關(guān)信息;而對(duì)于后者,爬蟲則直接解析Web頁面,提取并加工相關(guān)的結(jié)構(gòu)化數(shù)據(jù)信息,該類爬蟲便于定制自適應(yīng)于特定網(wǎng)頁模板的結(jié)果網(wǎng)站。 爬蟲的URL搜索策略問題
4、開發(fā)聚焦爬蟲時(shí),常見的URL搜索策略主要包括深度優(yōu)先搜索策略、廣度優(yōu)先搜索策略、最佳優(yōu)先搜索策略等[3]。在此給出對(duì)應(yīng)策略的規(guī)則分析如下。 深度優(yōu)先搜索策略 該搜索策略采用了后進(jìn)先出的隊(duì)列方式,從起始URL出發(fā),不停搜索網(wǎng)頁的下一級(jí)頁面直至最后無URL鏈接的網(wǎng)頁頁面結(jié)束;爬蟲再回到起始URL地址,繼續(xù)探尋URL的其它URL鏈接,直到不再有URL可搜索為止,當(dāng)所有頁面都結(jié)束時(shí),URL列表即按照倒敘的方式將搜索的URL隊(duì)列送入爬蟲待抓取隊(duì)列。 廣度優(yōu)先搜索策略 該搜索策略采用了先進(jìn)先出的隊(duì)列方式,從起始URL出發(fā),在搜索了初始web的所有URL鏈接后,再繼續(xù)搜索下一層URL
5、鏈接,直至所有URL搜索完畢。URL列表將按照其進(jìn)入隊(duì)列的順序送入爬蟲待抓取隊(duì)列。 最佳優(yōu)先搜索策略 該搜索策略采用了一種局部優(yōu)先搜索算法,從起始URL出發(fā),按照一定的分析算法,對(duì)頁面候選的URL進(jìn)行預(yù)測(cè),預(yù)測(cè)目標(biāo)網(wǎng)頁的相似度或主題相關(guān)性,當(dāng)相關(guān)性達(dá)到一定的閾值后,URL列表則按照相關(guān)數(shù)值高低順序送入爬蟲待抓取隊(duì)列?! ∨老x對(duì)網(wǎng)頁頁面的分析和主題相關(guān)性判斷算法 聚焦爬蟲在對(duì)網(wǎng)頁Web的URL進(jìn)行擴(kuò)展時(shí),還需要對(duì)網(wǎng)頁內(nèi)容進(jìn)行分析和信息的提取,用以確定該獲取URL頁面是否與采集的主題相關(guān)。目前常用的網(wǎng)頁的分析算法包括:基于網(wǎng)絡(luò)拓?fù)?、基于網(wǎng)頁內(nèi)容和基于領(lǐng)域概念的分析算法[4]。
6、下面給出這三類算法的原理實(shí)現(xiàn)?;诰W(wǎng)絡(luò)拓?fù)潢P(guān)系的分析算法 基于網(wǎng)絡(luò)拓?fù)潢P(guān)系的分析算法就是可以通過已知的網(wǎng)頁頁面或數(shù)據(jù),對(duì)與其有直接或間接鏈接關(guān)系的對(duì)象作出評(píng)價(jià)的實(shí)現(xiàn)過程。該算法又分為網(wǎng)頁粒度、網(wǎng)站粒度和網(wǎng)頁塊粒度三種。著名的PageRank和HITS算法就是基于網(wǎng)絡(luò)拓?fù)潢P(guān)系的典型代表?! 』诰W(wǎng)頁內(nèi)容的分析算法 基于網(wǎng)頁內(nèi)容的分析算法指的是利用網(wǎng)頁內(nèi)容特征進(jìn)行的網(wǎng)頁評(píng)價(jià)。該方法已從最初的文本檢索方法,向網(wǎng)頁數(shù)據(jù)抽取、數(shù)據(jù)挖掘和自然語言等多領(lǐng)域方向發(fā)展。 基于領(lǐng)域概念的分析算法 基于領(lǐng)域概念的分析算法則是將領(lǐng)域本體分解為由不同的概念、實(shí)體及其之間的關(guān)系,包括與之對(duì)應(yīng)的詞匯
7、項(xiàng)組成。網(wǎng)頁中的關(guān)鍵詞在通過與領(lǐng)域本體對(duì)應(yīng)的詞典分別轉(zhuǎn)換之后,將進(jìn)行計(jì)數(shù)和加權(quán),由此得出與所選領(lǐng)域的相關(guān)度?! ?幾種開源網(wǎng)絡(luò)爬蟲性能比較 目前,互聯(lián)網(wǎng)上推出有許多的開源網(wǎng)絡(luò)爬蟲,易于開發(fā)和擴(kuò)展的主要包括Nutch、Larbin、Heritrix等,下面即針對(duì)這三類爬蟲進(jìn)行實(shí)用性內(nèi)容介紹[5]: Heritrix是Java開發(fā)的開源Web爬蟲系統(tǒng),是InternetArchive的一個(gè)爬蟲項(xiàng)目。這是開源、可擴(kuò)展、Web范圍內(nèi)并帶有存檔性質(zhì)的網(wǎng)絡(luò)爬蟲。該系統(tǒng)允許用戶選擇擴(kuò)展各個(gè)組件,進(jìn)而實(shí)