亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Heritrix和Lucene的專題搜索引擎研究

        2012-11-14 04:31:38賈超衛(wèi)文學(xué)
        中國(guó)科技信息 2012年10期
        關(guān)鍵詞:搜索引擎網(wǎng)頁(yè)文檔

        賈超 衛(wèi)文學(xué)

        山東科技大學(xué)信息科學(xué)與工程學(xué)院,山東 青島 266590

        基于Heritrix和Lucene的專題搜索引擎研究

        賈超 衛(wèi)文學(xué)

        山東科技大學(xué)信息科學(xué)與工程學(xué)院,山東 青島 266590

        專題搜索引擎也稱垂直搜索引擎,主要用來(lái)滿足特定領(lǐng)域的用戶需求。Heritrix是開(kāi)源的網(wǎng)絡(luò)爬蟲(chóng),Heritrix的WebUI啟動(dòng)方式并不易用于廣大用戶。本文改變了往常對(duì)Heritrix用法,摒棄了Heritrix的WebUI啟動(dòng)方式,對(duì)Heritrix源碼進(jìn)行修改,將Lucene整合到Heritrix中,構(gòu)建成一個(gè)完整的搜索引擎,并通過(guò)監(jiān)聽(tīng)器監(jiān)聽(tīng)搜索引擎狀態(tài),使搜索引擎能夠進(jìn)行自動(dòng)爬取和數(shù)據(jù)更新。同時(shí),本文添加了網(wǎng)頁(yè)過(guò)濾模塊以及對(duì)查詢結(jié)果排序算法進(jìn)行了改進(jìn),提高了搜索引擎的易用性和查詢的準(zhǔn)確率。

        專題搜索引擎;Heritrix;Lucene;排序算法

        thematic search engine; Heritrix; Lucene; sorting algorithm

        引 言

        萬(wàn)維網(wǎng)上信息浩瀚萬(wàn)千,而且毫無(wú)秩序,所有的信息像汪洋上的一個(gè)個(gè)小島,而搜索引擎正如一副地圖可以讓用戶一目了然[1]。但在使用通用的搜索引擎時(shí),返回的結(jié)果往往成千上萬(wàn),用戶需要花費(fèi)大量的時(shí)間甄選自己真正感興趣的信息,很難準(zhǔn)確返回用戶需求[2]。垂直搜索引擎正好為解決該問(wèn)題,提出了很好的解決方案,它是一個(gè)針對(duì)某個(gè)行業(yè)的專業(yè)搜索引擎,是對(duì)網(wǎng)頁(yè)庫(kù)中某類專門信息的一次重新整合,為某一特定領(lǐng)域、某一特定人群或某一特定需求提供有一定價(jià)值的信息和服務(wù)[3]。

        常見(jiàn)Heritrix的使用方法往往是通過(guò)WebUI方式啟動(dòng)并進(jìn)行相應(yīng)的爬取配置后,才能進(jìn)行爬取。該方法并不容易被用戶接受和使用,同時(shí)會(huì)爬取大量的冗余和無(wú)用的網(wǎng)頁(yè)。本文通過(guò)將Lucene整合的Heritrix中,在網(wǎng)頁(yè)下載前,進(jìn)行網(wǎng)頁(yè)過(guò)濾,并對(duì)查詢結(jié)果排序的算法進(jìn)行改進(jìn),提高了查詢的準(zhǔn)確率,搜索引擎會(huì)根據(jù)專題的相關(guān)配置信息進(jìn)行自動(dòng)的爬取和更新。

        1 Heritrix與Lucene介紹

        專題搜索引擎的實(shí)現(xiàn)過(guò)程,主要分為三個(gè)步驟:(1)抓取網(wǎng)頁(yè)。(2)對(duì)網(wǎng)頁(yè)進(jìn)行處理,建立索引文件庫(kù)。(3)進(jìn)行查詢。本文中使用Heritrix實(shí)現(xiàn)從萬(wàn)維網(wǎng)上抓取網(wǎng)頁(yè),Lucene負(fù)責(zé)對(duì)網(wǎng)頁(yè)進(jìn)行處理和查詢。

        1.1 網(wǎng)絡(luò)爬蟲(chóng)Heritrix

        Heritrix是一個(gè)由Java開(kāi)發(fā)的、開(kāi)源的Web網(wǎng)絡(luò)爬蟲(chóng),用戶使用它從網(wǎng)絡(luò)上抓取特定的網(wǎng)頁(yè)或文檔等資源[4]。Heritrix可以通過(guò)Web UI的方式來(lái)啟動(dòng)、設(shè)置爬行參數(shù)并監(jiān)控爬行,其出色之處在于它的擴(kuò)展性,開(kāi)發(fā)者可以擴(kuò)展它的各個(gè)組件,來(lái)實(shí)現(xiàn)自己的抓取邏輯。雖然Heritrix功能強(qiáng)大,但其配置復(fù)雜,而且官方只在Linux系統(tǒng)上測(cè)試通過(guò),用戶難以上手,這也是本文將要解決的技術(shù)難點(diǎn)之一。

        Heritrix采用了模塊化的設(shè)計(jì),用戶可以根據(jù)需要選擇使用的模塊。它主要由核心類(core classes)和插件模塊(pluggable modules)構(gòu)成。核心類可以配置,但不能被覆蓋,插件模塊可以由第三方模塊取代。所以就可以用實(shí)現(xiàn)了特定抓取邏輯的第三方模塊來(lái)取代默認(rèn)插件模塊,從而滿足自己特定的抓取需求。Heritrix的整體結(jié)構(gòu)如圖1所示。

        圖1 Heritrix整體結(jié)構(gòu)

        其中CrawlController(下載控制器)是整個(gè)下載過(guò)程的總控制者,整個(gè)抓取工作的啟動(dòng)者,決定整個(gè)抓取任務(wù)的開(kāi)始和結(jié)束。每個(gè)URI都有一個(gè)獨(dú)立的線程,它從邊界Frontier(控制器)獲取新的URI,然后傳遞給Processor chains(處理鏈)交由系統(tǒng)Processor(處理器)處理[5]。

        1.2 檢索工具包Lucene

        Lucene是一套用于全文檢索和搜尋的開(kāi)放源代碼,由Apache軟件基金會(huì)支持和提供[6]。Lucene提供了一個(gè)簡(jiǎn)單卻強(qiáng)大的應(yīng)用程式接口,能夠?qū)崿F(xiàn)全文索引和檢索,是目前最受歡迎的免費(fèi)java信息檢索程序。Lucene最初是由Doug Cutting開(kāi)發(fā)的,在SourceForge的網(wǎng)站上提供下載[7]。在2001年9月作為高質(zhì)量的開(kāi)源Java產(chǎn)品加入到Apache軟件基金會(huì)的 Jakarta家族中。隨著每個(gè)版本的發(fā)布,這個(gè)項(xiàng)目得到明顯的增強(qiáng),也吸引了更多的用戶和開(kāi)發(fā)人員。Lucene的各組件及工作如圖2所示。

        圖2 Lucene的各組件及工作

        Document對(duì)象代表被索引文檔,IndexWriter通過(guò)方法addDocument()將文檔添加到索引中,實(shí)現(xiàn)創(chuàng)建索引的過(guò)程。Lucene的索引時(shí)應(yīng)用反向索引。當(dāng)用戶有請(qǐng)求時(shí),Query代表用戶的查詢語(yǔ)句。IndexSearcher通過(guò)方法search()搜索Lucene Index。IndexSearcher計(jì)算term weight和score并且將結(jié)果返回給用戶。返回給用戶的文檔集合用TopDocsCollector表示。

        2 整合Heritrix與Lucene的專題搜索引擎

        本文設(shè)計(jì)開(kāi)發(fā)的專題搜索引擎具有以下四個(gè)技術(shù)創(chuàng)新點(diǎn):專題搜索引擎自動(dòng)運(yùn)行、摒棄Heritrix傳統(tǒng)的WebUI啟動(dòng)方式、網(wǎng)頁(yè)過(guò)濾、查詢結(jié)果排序算法改進(jìn)。

        2.1 專題搜索引擎設(shè)計(jì)和自動(dòng)運(yùn)行

        本文設(shè)計(jì)的專題搜索引擎包括爬取器(網(wǎng)絡(luò)爬蟲(chóng))、索引器、查詢器和控制中心四個(gè)模塊。四個(gè)模塊的運(yùn)行協(xié)作關(guān)系如圖3所示。

        圖3 專題搜索引擎模塊運(yùn)行協(xié)作關(guān)系圖

        爬取器主要負(fù)責(zé)網(wǎng)頁(yè)爬取,為索引器提供索引文檔;索引器負(fù)責(zé)對(duì)爬取的網(wǎng)頁(yè)建立倒排索引,供查詢器進(jìn)行搜索;查詢器負(fù)責(zé)用戶查詢;控制中心負(fù)責(zé)監(jiān)聽(tīng)爬取器、索引器和查詢器的運(yùn)行狀態(tài)以及根據(jù)專題配置信息啟動(dòng)爬取器或索引器,以實(shí)現(xiàn)專題搜索引擎的自動(dòng)爬取和數(shù)據(jù)更新。

        為了保證搜索引擎的自動(dòng)運(yùn)行和各模塊間的協(xié)調(diào)工作,本文分別為爬取器、索引器和查詢器設(shè)定了兩種運(yùn)行狀態(tài),0表示空閑狀態(tài),1表示運(yùn)行狀態(tài)。

        爬取器與索引器的運(yùn)行存在一定的順序,二者不能同時(shí)運(yùn)行,只有當(dāng)爬取器運(yùn)行完之后,才能運(yùn)行索引器,若網(wǎng)頁(yè)數(shù)據(jù)沒(méi)有下載更新,索引器是不能繼續(xù)運(yùn)行的。因此,需要為爬取器和索引器設(shè)定運(yùn)行狀態(tài),并在控制中心中設(shè)置監(jiān)聽(tīng)器,定時(shí)監(jiān)聽(tīng)二者的運(yùn)行狀態(tài),協(xié)調(diào)二者工作。另一個(gè)問(wèn)題是如何控制爬取器的自動(dòng)運(yùn)行,我們的解決方法是在數(shù)據(jù)庫(kù)中保存搜索引擎爬取時(shí)間間隔取值,這里爬取時(shí)間間隔取值是指從爬取器上一次爬取完到下一次開(kāi)始爬取之間的時(shí)間間隔。當(dāng)監(jiān)聽(tīng)器檢測(cè)到爬取器處于空閑(等待)狀態(tài)時(shí),且爬取器等待時(shí)間超過(guò)數(shù)據(jù)庫(kù)中設(shè)置的爬取時(shí)間間隔時(shí),控制中心會(huì)啟動(dòng)爬取器進(jìn)行網(wǎng)頁(yè)爬取。

        2.2 摒棄Heritrix WebUI啟動(dòng)方式

        Heritrix的WebUI啟動(dòng)方式雖然廣泛被開(kāi)發(fā)人員使用,但其配置繁瑣,不具備易用性。無(wú)法動(dòng)態(tài)設(shè)置爬取網(wǎng)站和爬取深度,不能自動(dòng)的持久運(yùn)行,對(duì)于普通用戶很難掌握并使用。本文摒棄Heritrix的WebUI啟動(dòng)方式,通過(guò)配置CrawlController類來(lái)啟動(dòng)抓取任務(wù)過(guò)。Heritrix啟動(dòng)核心代碼如下:

        SystemInfoDao負(fù)責(zé)讀取專題的配置信息,比如爬取深度、種子鏈接等。HeritrixCrawlInfo負(fù)責(zé)保存每一次爬取任務(wù)的專題配置信息。當(dāng)然,相關(guān)的配置信息是提前保存在數(shù)據(jù)庫(kù)中的,為不同的專題提供不同的配置信息,避免了每次都要設(shè)置配置信息。

        通過(guò)控制中心的協(xié)調(diào)以及摒棄Web UI啟動(dòng)方式,用戶只需要配置相關(guān)專題領(lǐng)域的信息就可以高效的檢索相關(guān)專題領(lǐng)域的信息,用戶不在需要關(guān)心搜索引擎的啟動(dòng)和運(yùn)行,方便了用戶的使用。

        2.3 網(wǎng)頁(yè)過(guò)濾

        當(dāng)使用Heritrix爬取網(wǎng)頁(yè)時(shí),磁盤上會(huì)存放大量的網(wǎng)頁(yè)文件,而且其中會(huì)有很多無(wú)用和冗余的網(wǎng)頁(yè)信息,占用大量的磁盤空間。通過(guò)網(wǎng)頁(yè)過(guò)濾,系統(tǒng)僅爬取與專題領(lǐng)域相關(guān)的網(wǎng)頁(yè),可以提高網(wǎng)頁(yè)爬取的準(zhǔn)確性和節(jié)省磁盤空間,即在網(wǎng)頁(yè)下載到本地磁盤之前,對(duì)網(wǎng)頁(yè)數(shù)據(jù)進(jìn)行挖掘分析。Heritrix在下載某一網(wǎng)頁(yè)或某一文檔之前,我們先對(duì)該網(wǎng)頁(yè)或文檔對(duì)應(yīng)的文本數(shù)據(jù)進(jìn)行信息分析,判斷是否包含相關(guān)專題領(lǐng)域的關(guān)鍵詞,當(dāng)然相關(guān)專題領(lǐng)域的關(guān)鍵詞事先存儲(chǔ)在數(shù)據(jù)庫(kù),由專業(yè)領(lǐng)域人員來(lái)設(shè)定。若該網(wǎng)頁(yè)或文檔包含相關(guān)專題領(lǐng)域信息,則下載該網(wǎng)頁(yè)或文檔,否則拋棄該網(wǎng)頁(yè)或文檔,繼續(xù)處理其它鏈接。

        2.4 查詢結(jié)果排序算法設(shè)計(jì)

        查詢結(jié)果排序算法實(shí)際是指文檔得分算法,為了提高查詢的準(zhǔn)確率,本文對(duì)文檔的得分算法進(jìn)行了改進(jìn)。通層次分析法(AHP),為相關(guān)專題領(lǐng)域關(guān)鍵詞設(shè)定權(quán)重(用weight表示),通過(guò)設(shè)定關(guān)鍵詞權(quán)重,更能體現(xiàn)專題領(lǐng)域信息的專業(yè)性。當(dāng)同一信息在多個(gè)網(wǎng)頁(yè)或網(wǎng)站被轉(zhuǎn)載或發(fā)表時(shí),從側(cè)面反映出其存在較高的價(jià)值和實(shí)用性。因此,本文在排序算法中引入了一項(xiàng)評(píng)估指標(biāo)—網(wǎng)頁(yè)信息重復(fù)率(用pac表示),網(wǎng)頁(yè)信息重復(fù)率的權(quán)重通過(guò)德?tīng)柗品?Delphi)來(lái)獲取,同樣我們引入傳播范圍這一評(píng)估指標(biāo),傳播范圍(用ptc表示)在本文中代表同一信息出現(xiàn)在多少不同的網(wǎng)站上,當(dāng)然其權(quán)重同樣是通過(guò)德?tīng)柗品?Delphi)來(lái)獲取。

        本文將文檔的最后的得分劃分為兩部分:Lucene原始文檔得分和引進(jìn)評(píng)估指標(biāo)算法得分,兩部分得分之和為文檔的最后得分。Lucene的文檔得分算法,具體公式如下:2.0[M].人民郵電出版社,2007.

        tf的全稱為Term Frequency,也就是詞條頻率的一次。idf的全稱為Inversed Document Frequency,它表示反轉(zhuǎn)文檔頻率。Boost指在建立索引時(shí),對(duì)每個(gè)Field設(shè)置的一種激勵(lì)因子[8]。

        引進(jìn)評(píng)估指標(biāo)算法得分算法,具體得分計(jì)算如下:

        兩部分得分之后即為文檔得分,查詢結(jié)果按照文檔得分的高低顯示,當(dāng)然文檔內(nèi)容重復(fù)率達(dá)到規(guī)定取值時(shí),取文檔得分較高者顯示。最終通過(guò)引入新的得分算法,在一定程度上既能提高了查詢的準(zhǔn)確率又能降低了查詢結(jié)果的重復(fù)率。

        2.5 搜索引擎應(yīng)用

        本文設(shè)計(jì)開(kāi)發(fā)的搜索引擎已被成功的應(yīng)用到一涉腐輿情預(yù)警系統(tǒng)中。搜索引擎查詢結(jié)果界面如圖4所示。

        圖4 搜索引擎查詢結(jié)果界面

        3 結(jié)語(yǔ)

        本文通過(guò)將Heritrix和Lucene進(jìn)行有效的結(jié)合,構(gòu)建成一個(gè)完整的搜索引擎。并通過(guò)對(duì)源碼的修改和封裝實(shí)現(xiàn)了專題搜索引擎的自動(dòng)運(yùn)行,用戶只需配置相應(yīng)的專題信息即可使用其檢索功能,無(wú)需進(jìn)行繁瑣的配置和關(guān)心搜索引擎的運(yùn)行。本文的主要?jiǎng)?chuàng)新點(diǎn)有專題搜索引擎的自動(dòng)運(yùn)行,易于普通用戶的使用,提高了易用性;摒棄Heritrix的傳統(tǒng)用法,避免了繁瑣的配置過(guò)程;進(jìn)行網(wǎng)頁(yè)過(guò)濾,避免爬取大量無(wú)用的和冗余的網(wǎng)頁(yè)信息,節(jié)省了磁盤空間;改進(jìn)文檔得分算法,提高查詢的準(zhǔn)確率和在一定程度上實(shí)現(xiàn)了檢索去重。

        [1]http://zh.wikipedia.org/wiki/%E6%90%9C%E7 %B4%A2%E5%BC%95%E6%93%8E

        [2]李世明,趙恒永.專題搜索引擎研究與實(shí)現(xiàn)[J].電子科學(xué)技術(shù)評(píng)論,2005.

        [3]高偉峰.基于Heritrix的主題網(wǎng)絡(luò)爬蟲(chóng)設(shè)計(jì)與實(shí)現(xiàn)[J].南寧職業(yè)技術(shù)學(xué)院,2011.

        [4]孟祥成.基于Lucene和Heritrix技術(shù)搜索引擎的設(shè)計(jì)與實(shí)現(xiàn)[J].中國(guó)現(xiàn)代教育裝備,2010.

        [5]http://www.chineselinuxuniversity.net/ articles/40890.shtml

        [6]白坤,耿國(guó)華.基于Lucene/Heritrix的垂直搜索引擎的研究與應(yīng)用[J].計(jì)算機(jī)應(yīng)用與軟件,2009.

        [7]Erik Hatcher,Otis Gospodetic,Lucene In Action [M]. Manning Publications Co.2005.

        [8]邱哲,符滔滔.開(kāi)發(fā)自己的搜搜引擎Lucene

        Research on the topical search engine based on Heritrix and Lucene

        JIA Chao WEI Wen-xue
        College of Information Science & Engineering , Shandong University of Science & Technology , Qingdao Shandong 266590 , China

        thematic search engine, also known as vertical search engines, mainly used to meet specific user needs. Heritrix is an open source Web crawler Heritrix the WebUI start way is not easy for the majority of users. Changed the usual Heritrix usage abandon the way of the Heritrix of WebUI start Heritrix source code be modified to integrate Lucene into Heritrix build into a complete search engine, and through the listener to monitor the status of the search engine, search engines can automatic crawling and data updates. Meanwhile, the paper added Web filtering module, and query results sorting algorithm has been improved, easyto-use search engine and query accuracy.

        TP393

        A

        10.3969/j.issn.1001-8972.2012.10.050

        賈超(1989-),男,山東泰安人, 碩士研究生,主要研究方向?yàn)檐浖こ?/p>

        猜你喜歡
        搜索引擎網(wǎng)頁(yè)文檔
        有人一聲不吭向你扔了個(gè)文檔
        基于CSS的網(wǎng)頁(yè)導(dǎo)航欄的設(shè)計(jì)
        電子制作(2018年10期)2018-08-04 03:24:38
        基于URL和網(wǎng)頁(yè)類型的網(wǎng)頁(yè)信息采集研究
        電子制作(2017年2期)2017-05-17 03:54:56
        基于RI碼計(jì)算的Word復(fù)制文檔鑒別
        網(wǎng)頁(yè)制作在英語(yǔ)教學(xué)中的應(yīng)用
        Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat
        網(wǎng)絡(luò)搜索引擎亟待規(guī)范
        基于Nutch的醫(yī)療搜索引擎的研究與開(kāi)發(fā)
        10個(gè)必知的網(wǎng)頁(yè)設(shè)計(jì)術(shù)語(yǔ)
        廣告主與搜索引擎的雙向博弈分析
        伊人蕉久中文字幕无码专区| av免费不卡国产观看| 日韩激情无码免费毛片| 毛片网站视频| 日本精品国产1区2区3区| 在线精品国产亚洲av麻豆| 黄桃av无码免费一区二区三区| 中文字幕人妻丝袜美腿乱| 91精品国产91热久久p| 五月激情在线观看视频| 亚洲av综合av一区二区三区| 夜夜未满十八勿进的爽爽影院| 亚洲av美女在线播放啊| 中文字幕日本五十路熟女| 亚洲av高清一区二区三| 免费人成视频在线| 久久综合亚洲色社区| 白浆高潮国产免费一区二区三区| 狠狠色狠狠色综合网| 人妻少妇被猛烈进入中文字幕| 真人在线射美女视频在线观看| 日本一级三级在线观看| 久久性爱视频| 久久久精品久久日韩一区综合| 青青草极品视频在线播放| 亚洲一区二区自拍偷拍| 蜜桃av在线播放视频| 亚洲夜夜性无码| 亚洲av成人无码网天堂| 女同成片av免费观看| 国产一区二区三区天堂| 激情第一区仑乱| 人妻少妇无码中文幕久久| 亚洲丝袜美腿精品视频| 性生交片免费无码看人| 久久免费国产精品| 亚洲国产都市一区二区| 亚洲一区二区三区小说| 欧美黑人疯狂性受xxxxx喷水 | 无码少妇一区二区三区 | 成人av一区二区亚洲精|