999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

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

2012-11-14 04:31:38賈超衛文學
中國科技信息 2012年10期
關鍵詞:搜索引擎用戶信息

賈超 衛文學

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

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

賈超 衛文學

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

專題搜索引擎也稱垂直搜索引擎,主要用來滿足特定領域的用戶需求。Heritrix是開源的網絡爬蟲,Heritrix的WebUI啟動方式并不易用于廣大用戶。本文改變了往常對Heritrix用法,摒棄了Heritrix的WebUI啟動方式,對Heritrix源碼進行修改,將Lucene整合到Heritrix中,構建成一個完整的搜索引擎,并通過監聽器監聽搜索引擎狀態,使搜索引擎能夠進行自動爬取和數據更新。同時,本文添加了網頁過濾模塊以及對查詢結果排序算法進行了改進,提高了搜索引擎的易用性和查詢的準確率。

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

thematic search engine; Heritrix; Lucene; sorting algorithm

引 言

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

常見Heritrix的使用方法往往是通過WebUI方式啟動并進行相應的爬取配置后,才能進行爬取。該方法并不容易被用戶接受和使用,同時會爬取大量的冗余和無用的網頁。本文通過將Lucene整合的Heritrix中,在網頁下載前,進行網頁過濾,并對查詢結果排序的算法進行改進,提高了查詢的準確率,搜索引擎會根據專題的相關配置信息進行自動的爬取和更新。

1 Heritrix與Lucene介紹

專題搜索引擎的實現過程,主要分為三個步驟:(1)抓取網頁。(2)對網頁進行處理,建立索引文件庫。(3)進行查詢。本文中使用Heritrix實現從萬維網上抓取網頁,Lucene負責對網頁進行處理和查詢。

1.1 網絡爬蟲Heritrix

Heritrix是一個由Java開發的、開源的Web網絡爬蟲,用戶使用它從網絡上抓取特定的網頁或文檔等資源[4]。Heritrix可以通過Web UI的方式來啟動、設置爬行參數并監控爬行,其出色之處在于它的擴展性,開發者可以擴展它的各個組件,來實現自己的抓取邏輯。雖然Heritrix功能強大,但其配置復雜,而且官方只在Linux系統上測試通過,用戶難以上手,這也是本文將要解決的技術難點之一。

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

圖1 Heritrix整體結構

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

1.2 檢索工具包Lucene

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

圖2 Lucene的各組件及工作

Document對象代表被索引文檔,IndexWriter通過方法addDocument()將文檔添加到索引中,實現創建索引的過程。Lucene的索引時應用反向索引。當用戶有請求時,Query代表用戶的查詢語句。IndexSearcher通過方法search()搜索Lucene Index。IndexSearcher計算term weight和score并且將結果返回給用戶。返回給用戶的文檔集合用TopDocsCollector表示。

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

本文設計開發的專題搜索引擎具有以下四個技術創新點:專題搜索引擎自動運行、摒棄Heritrix傳統的WebUI啟動方式、網頁過濾、查詢結果排序算法改進。

2.1 專題搜索引擎設計和自動運行

本文設計的專題搜索引擎包括爬取器(網絡爬蟲)、索引器、查詢器和控制中心四個模塊。四個模塊的運行協作關系如圖3所示。

圖3 專題搜索引擎模塊運行協作關系圖

爬取器主要負責網頁爬取,為索引器提供索引文檔;索引器負責對爬取的網頁建立倒排索引,供查詢器進行搜索;查詢器負責用戶查詢;控制中心負責監聽爬取器、索引器和查詢器的運行狀態以及根據專題配置信息啟動爬取器或索引器,以實現專題搜索引擎的自動爬取和數據更新。

為了保證搜索引擎的自動運行和各模塊間的協調工作,本文分別為爬取器、索引器和查詢器設定了兩種運行狀態,0表示空閑狀態,1表示運行狀態。

爬取器與索引器的運行存在一定的順序,二者不能同時運行,只有當爬取器運行完之后,才能運行索引器,若網頁數據沒有下載更新,索引器是不能繼續運行的。因此,需要為爬取器和索引器設定運行狀態,并在控制中心中設置監聽器,定時監聽二者的運行狀態,協調二者工作。另一個問題是如何控制爬取器的自動運行,我們的解決方法是在數據庫中保存搜索引擎爬取時間間隔取值,這里爬取時間間隔取值是指從爬取器上一次爬取完到下一次開始爬取之間的時間間隔。當監聽器檢測到爬取器處于空閑(等待)狀態時,且爬取器等待時間超過數據庫中設置的爬取時間間隔時,控制中心會啟動爬取器進行網頁爬取。

2.2 摒棄Heritrix WebUI啟動方式

Heritrix的WebUI啟動方式雖然廣泛被開發人員使用,但其配置繁瑣,不具備易用性。無法動態設置爬取網站和爬取深度,不能自動的持久運行,對于普通用戶很難掌握并使用。本文摒棄Heritrix的WebUI啟動方式,通過配置CrawlController類來啟動抓取任務過。Heritrix啟動核心代碼如下:

SystemInfoDao負責讀取專題的配置信息,比如爬取深度、種子鏈接等。HeritrixCrawlInfo負責保存每一次爬取任務的專題配置信息。當然,相關的配置信息是提前保存在數據庫中的,為不同的專題提供不同的配置信息,避免了每次都要設置配置信息。

通過控制中心的協調以及摒棄Web UI啟動方式,用戶只需要配置相關專題領域的信息就可以高效的檢索相關專題領域的信息,用戶不在需要關心搜索引擎的啟動和運行,方便了用戶的使用。

2.3 網頁過濾

當使用Heritrix爬取網頁時,磁盤上會存放大量的網頁文件,而且其中會有很多無用和冗余的網頁信息,占用大量的磁盤空間。通過網頁過濾,系統僅爬取與專題領域相關的網頁,可以提高網頁爬取的準確性和節省磁盤空間,即在網頁下載到本地磁盤之前,對網頁數據進行挖掘分析。Heritrix在下載某一網頁或某一文檔之前,我們先對該網頁或文檔對應的文本數據進行信息分析,判斷是否包含相關專題領域的關鍵詞,當然相關專題領域的關鍵詞事先存儲在數據庫,由專業領域人員來設定。若該網頁或文檔包含相關專題領域信息,則下載該網頁或文檔,否則拋棄該網頁或文檔,繼續處理其它鏈接。

2.4 查詢結果排序算法設計

查詢結果排序算法實際是指文檔得分算法,為了提高查詢的準確率,本文對文檔的得分算法進行了改進。通層次分析法(AHP),為相關專題領域關鍵詞設定權重(用weight表示),通過設定關鍵詞權重,更能體現專題領域信息的專業性。當同一信息在多個網頁或網站被轉載或發表時,從側面反映出其存在較高的價值和實用性。因此,本文在排序算法中引入了一項評估指標—網頁信息重復率(用pac表示),網頁信息重復率的權重通過德爾菲法(Delphi)來獲取,同樣我們引入傳播范圍這一評估指標,傳播范圍(用ptc表示)在本文中代表同一信息出現在多少不同的網站上,當然其權重同樣是通過德爾菲法(Delphi)來獲取。

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

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

引進評估指標算法得分算法,具體得分計算如下:

兩部分得分之后即為文檔得分,查詢結果按照文檔得分的高低顯示,當然文檔內容重復率達到規定取值時,取文檔得分較高者顯示。最終通過引入新的得分算法,在一定程度上既能提高了查詢的準確率又能降低了查詢結果的重復率。

2.5 搜索引擎應用

本文設計開發的搜索引擎已被成功的應用到一涉腐輿情預警系統中。搜索引擎查詢結果界面如圖4所示。

圖4 搜索引擎查詢結果界面

3 結語

本文通過將Heritrix和Lucene進行有效的結合,構建成一個完整的搜索引擎。并通過對源碼的修改和封裝實現了專題搜索引擎的自動運行,用戶只需配置相應的專題信息即可使用其檢索功能,無需進行繁瑣的配置和關心搜索引擎的運行。本文的主要創新點有專題搜索引擎的自動運行,易于普通用戶的使用,提高了易用性;摒棄Heritrix的傳統用法,避免了繁瑣的配置過程;進行網頁過濾,避免爬取大量無用的和冗余的網頁信息,節省了磁盤空間;改進文檔得分算法,提高查詢的準確率和在一定程度上實現了檢索去重。

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

[2]李世明,趙恒永.專題搜索引擎研究與實現[J].電子科學技術評論,2005.

[3]高偉峰.基于Heritrix的主題網絡爬蟲設計與實現[J].南寧職業技術學院,2011.

[4]孟祥成.基于Lucene和Heritrix技術搜索引擎的設計與實現[J].中國現代教育裝備,2010.

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

[6]白坤,耿國華.基于Lucene/Heritrix的垂直搜索引擎的研究與應用[J].計算機應用與軟件,2009.

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

[8]邱哲,符滔滔.開發自己的搜搜引擎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-),男,山東泰安人, 碩士研究生,主要研究方向為軟件工程

猜你喜歡
搜索引擎用戶信息
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
網絡搜索引擎亟待規范
中國衛生(2015年12期)2015-11-10 05:13:38
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
基于Nutch的醫療搜索引擎的研究與開發
廣告主與搜索引擎的雙向博弈分析
搜索,也要“深搜熟濾”
主站蜘蛛池模板: 国产成人在线小视频| 国产黄色爱视频| 免费亚洲成人| 国产99热| 日韩欧美综合在线制服| 精品少妇人妻一区二区| 国产成人综合在线视频| 美女视频黄频a免费高清不卡| 国产综合亚洲欧洲区精品无码| 伦精品一区二区三区视频| 日韩国产高清无码| 国产成人做受免费视频| 国产成人高清亚洲一区久久| 丁香婷婷在线视频| 在线视频一区二区三区不卡| 露脸国产精品自产在线播| 久久77777| 97视频精品全国免费观看 | 99热这里只有精品2| 中国丰满人妻无码束缚啪啪| 亚洲 欧美 偷自乱 图片| 国产一级毛片yw| 久久久久亚洲AV成人人电影软件| 夜夜操天天摸| 欧美日韩亚洲综合在线观看| 99re在线免费视频| 国产欧美综合在线观看第七页| 日本高清在线看免费观看| 91青青草视频| a毛片免费在线观看| 色综合天天综合中文网| 日韩毛片免费| 成人福利一区二区视频在线| 欧美伦理一区| 2021国产在线视频| 亚洲无码在线午夜电影| 久久一色本道亚洲| 国产爽爽视频| 国产在线第二页| 国产aⅴ无码专区亚洲av综合网| 亚洲人成影院午夜网站| 免费一级毛片在线播放傲雪网| 欧美乱妇高清无乱码免费| 国产91丝袜| 97视频免费在线观看| 伊人久久婷婷五月综合97色| 免费看a级毛片| 亚洲一级毛片免费看| 国产精品无码AⅤ在线观看播放| 国产在线视频导航| 亚洲精品第一页不卡| 老司国产精品视频91| 97视频精品全国在线观看| 精品五夜婷香蕉国产线看观看| 国产美女一级毛片| 亚洲国产成人精品青青草原| 四虎国产永久在线观看| 亚洲va在线∨a天堂va欧美va| 狼友视频一区二区三区| 国产v精品成人免费视频71pao| 国产97公开成人免费视频| 亚洲三级色| 午夜视频www| 老司机久久99久久精品播放| 91精品网站| 久久婷婷六月| 国产丝袜一区二区三区视频免下载| 成人日韩精品| 欧美日韩中文国产| 欧美亚洲国产日韩电影在线| 2024av在线无码中文最新| 欧美午夜在线播放| 99久久精品免费观看国产| 欧美色图久久| 三上悠亚一区二区| 久久久久久久蜜桃| 在线视频一区二区三区不卡| 国产欧美另类| 国产自在线播放| 激情成人综合网| 国产交换配偶在线视频| 久久a级片|