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

基于Heritrix與Lucene的地震專業搜索引擎設計

2016-11-26 04:50:59李亞龍
地震地磁觀測與研究 2016年5期
關鍵詞:搜索引擎排序用戶

孫 靜 李亞龍 萬 杰

(中國合肥230031安徽省地震局)

基于Heritrix與Lucene的地震專業搜索引擎設計

孫 靜 李亞龍 萬 杰

(中國合肥230031安徽省地震局)

隨著網絡科技的發展,用戶對搜索引擎提出更高要求,專業搜索引擎應運而生并不斷發展壯大。對地震專業搜索引擎進行系統研究,提出一種基于網絡爬蟲Heritrix和開源全文信息檢索包Lucene的專業檢索解決方案,完成信息資源抓取、鏡像文件建立及索引、搜索等關鍵操作的建立。

地震;Heritrix;Lucene;索引;搜索

0 引言

當今世界是信息的世界,網絡信息資源飛速膨脹,如何在浩瀚如海的信息空間里快速查找并獲取所需信息已成為信息時代的根本問題之一。網絡搜索引擎在網絡信息資源查找中起到重要作用,可以幫助人們在繁多的網絡信息中查找所需內容。然而現有搜索引擎,如Google、百度等,均非為特定領域設計,面向某一特定領域某一特定專業、某一特定用戶的專業搜索引擎,即垂直搜索引擎(又被稱為專業搜索引擎),應運而生。專業搜索引擎可以更好地面向特定領域特定專業進行深入信息搜索,從而滿足特定用戶需求。

本文提出的地震專業搜索引擎即為一種專業搜索引擎,該引擎基于Lucene和Heritrix兩個核心技術,實現信息資源的抓取和索引、搜索功能的建立,提供在線查詢接口和友好的用戶界面。

1 Heritrix和Lucene技術

1.1 網絡爬蟲Heritrix

Heritrix是一款基于Java語言開發的開源的爬蟲框架,被用來獲取完整的、精確的、站點內容的深度復制,包括獲取圖像及其他非文本內容、抓取并存儲相關內容,具有良好的可擴展性,開發者可以擴展插件模塊,來實現自己的抓取邏輯(邱哲,2010)。Heritrix包含以下主要組件:①CrawlOrder,為整個抓取任務的起點;②CrawlController,是一次抓取任務中的核心組件;③Frontier,為ToeThread提供URI工具;④ToeThread和ToePool,提供一個標準線程池,用于管理抓取線程ToeThread;⑤Heritrix提供一系列Processor,負責對URI進行不同處理。

1.2 開源式全文檢索工具包Lucene

Lucene是一個開發源代碼的全文檢索引擎工具包,可以提供完整的查詢檢索和索引檢索引擎功能,支持英文與德文兩種語言進行邏輯設計。Lucene是基于javayuan框架,針對完成本搜索引擎系統的索引和查詢功能設計的核心工具,程序設計員通過對Lucene的調用,輕松高效地完成全文索引引擎設計(邱哲,2010)。Lucene能對文檔進行預處理、過濾、分析、索引和檢索排序,應用程序編程接口和調用函數系統豐富,具有高效、簡單的特點。

2 地震專業搜索引擎設計

2.1 總體設計

地震專業搜索引擎是服務于地震行業,是以地震為專業內容的搜索引擎系統。本搜索引擎包含3大模塊:基于Heritrix技術的排序抓取設計模塊、基于Lucene技術的索引排序模塊、基于網頁技術的用戶界面及結果顯示模塊。地震專業搜索引擎具體流程如下:基于Heritrix技術,爬行抓取相關網頁HTML格式和TXT格式的文本;基于Lucene技術設計索引排序模塊,對抓取的本地磁盤文本內容進行排序和索引;使用基于網頁技術的用戶界面及結果顯示模塊,對用戶的搜索要求進行相應接收,變成相應搜索指令,依據指令,將搜索結果按照相關網頁鏈接時間進行排序,以關鍵字提亮后顯示給用戶,用戶點擊相關鏈接瀏覽(圖1)。

地震專業搜索引擎分為前端程序和后端程序兩部分(圖2)。在前端流程中,用戶在搜索引擎提供的界面(用戶界面一般是一個帶有輸入框的 Web 頁面)中輸入搜索關鍵詞,應用程序將關鍵詞解析成搜索引擎可以理解的形式,在索引文件上進行搜索操作,排序后,搜索引擎將搜索結果返給用戶。在后端流程中,網絡爬蟲從因特網上獲取 Web 頁面,索引子系統進行解析并存入索引文件(楊頌,2010)。

圖1 專業搜索引擎系統流程Fig.1 Specialty search engine system flow chart

圖2 專業搜索引擎整體架構Fig.2 Specialty search engine architecture

2.2 實現基于Heritrix的抓取模塊

2.2.1 Heritrix安裝配置。本項目下載使用Heritrix1.14.4源代碼版本。在Eclipse中新建Java工程,將所需類庫和源代碼導入工程,需注意文件放置路徑。在Heritrix目錄下的conf文件中Heritrix.Properties設置兩行: Heritrix.mdline.admin=admin:admin,

“admin:admin”分別為用戶名和密碼;heritrix.cmdline.port=8081,默認的8080被Tomcat占用,需要修改。配置后的Heritrix項目運行結果見圖3。在瀏覽器中輸入http://localhost:8081,以Web方式配置Heritrix(具體配置細節可以參考相關文檔),即可進行網頁抓取。

圖3 Heritrix運行成功Fig.3 Heritrix successful operation diagram

2.2.2 網頁過濾。Heritrix抓取網站內部URI及包括的所有文件,一般只需搜索純文本,可以通過重寫FrontierScheduler內部的schedule達到過濾目的。實現代碼如下

為了提高抓取效率,可設置函數considerRobotsPreconditions(CrawlURI curi)的返回值為false,取消robots.txt的限制,抓取速度將提高至少一半 (羅剛,2009)。

2.3 設計與實現基于Lucene的排序和索引

抓取結束后,將搜索的結果數據進行索引、分詞,并對外提供接口展示給用戶。

2.3.1 網頁解析。抓取的網頁源碼包含大量HTML標簽,需經網頁過濾提取有用信息。在此使用Lucene提供的HTML解析器和htmlparser,改造或提取HTML,從中獲取節點的各項屬性和信息(黃穎,2008)。

地震專業搜索引擎使用Eclipse開發,新建Java工程,導入htmlparser.jar包和luceneHtmlParser包。新建一個類initHtmlParser,解析原始網頁,提取有用信息,并被其他控制類調用,部分核心代碼如下

2.3.2 索引建立。新建 “test.dw.paper.lucene.index”包,添加indextest類,用來建立索引。indextest類包含兩個私有屬性,分別是dataDir和indexDir。dataDir代表存放等待進行索引的 HTML頁面的路徑,indexDir代表存放Lucene索引文件的路徑。類indextest提供3個方法,分別是createIndex、addDocument和ifIndexExist。可以使用方法createIndex創建索引,采用方法 addDocument向一個索引上添加文檔,即添加一個HTML頁面。addDocument調用HTMLDocParser提供的方法,對HTML文檔進行解析,使用ifIndexExist判斷Lucene的索引是否存在。ccreateIndex是一個遞歸遍歷文件目錄來建立索引的函數。核心代碼如下

2.4 實現搜索功能

為了實現搜索功能,定義SearchManager類和SearchResultBean類。SearchManager用來實現搜索功能,SearchResultBean是個JavaBean,用來描述搜索結果的結構。SearchManager類有3個私有屬性:①searchWord,代表來自客戶端的搜索詞;②indexManager,代表在索引子系統中定義的類IndexManager的一個實例;③analyzer,代表用來解析搜索詞的解析器。

search方法首先檢查索引文件是否存在,如果存在,則在索引上進行檢索;如果不存在,調用類IndexManager提供的方法創建索引,然后進行檢索。搜索結果返回后,提取需要的屬性并為每個搜索結果生成類SearchResultBean的一個實例,放入一個列表并返回請求管理器。搜索結果包含兩個屬性:htmlPath和htmlTitle,其中htmlPath代表HTML文件路徑,htmlTitle代表HTML文件標題。核心代碼如下

3 用戶接口

使用search.jsp頁面實現用戶接口子系統,提供用戶界面,使用戶可以向 Web 應用程序服務器提交搜索請求,顯示搜索結果。

(1)提供一個用戶接口,向Web應用程序服務器提交搜索請求。搜索請求發送到名為SearchController類的Servlet。Servlet的名字和具體實現類的對應關系在Web.xml里指定。 即

4 搜索引擎在地震行業中的應用

系統采用Java語言實現,實驗從網絡中選取100篇與地震相關的網頁作為種子url集,并依此選取2 000篇地震相關文件進行測試。搜索引擎查詢結果界面見圖4。主要采集指標為查找精度、召回率,結果見表1。由實驗結果可知,地震專業搜索引擎在采集精度上效果較好。故將基于Heritrix和Lucence的地震專業搜索引擎應用到地震輿情預警系統中是可行的。

圖4 輿情監控系統Fig.4 Public opinion monitoring system

表1 結果統計Table 1 Result statistics

5 結束語

將Heritrix和Lucence進行有效結合,構建完整的搜索引擎,通過對源碼的修改和

封裝,實現以地震為專題搜索引擎的自動運行,用戶只需配置相應專題信息即可使用檢索功能,無需進行繁瑣配置,且不必關心搜索引擎的運行。地震專業搜索引擎的自動運行,易于普通用戶使用,提高了易用性,擯棄Heritrix的傳統用法,避免了繁瑣的配置過程;進行網頁過濾,避免爬取大量無用和冗余的網頁信息,節省磁盤空間,可在地震行業推廣使用。

黃穎,黃治平.HtmlParser提取網頁信息的設計與實現[J].江西理工大學學報,2008,28(6):26-28.

羅剛.自己動手寫搜索引擎[M].北京:電子工業出版社,2009.

邱哲,符滔滔,王雪松.開發自己的搜索引擎——Lucene+Heritrix[M].北京:人民郵電出版社,2010.

楊頌,歐陽柳波.基于Heritrix的面向電子商務網站增量爬蟲研究[J].軟件導刊,2010,9(7):38-39.

Design and implementation of the search engine for earthquake based on Heritrix and Lucene

Sun Jing,Li Yalong and Wan Jie
(Earthquake Administration of Anhui Province,Hefei 230031,China)

With the development of the internet technology,it is demanding to have enhanced search engine with great precision.Enterprise search engine is then proposed and advanced for such purpose.We systematically studied the search engine for seismology and implemented an enterprise search solution based on Web-based crawler Heritrix and Lucene which is an open source full-featured text search engine.The key functions in our system include acquiring information,creating image fi les,building indices and searching.

earthquake,Heritrix,Lucene,index,search

10.3969/j.issn.1003-3246.2016.05.030

孫靜(1978—),女,安徽合肥人,工程師,2005年畢業于中國科學技術大學軟件工程專業,獲碩士學位,主要從事網絡技術方面的研究工作

安徽省地震局青年基金課題

本文收到日期:2016-03-25

猜你喜歡
搜索引擎排序用戶
排序不等式
恐怖排序
節日排序
刻舟求劍
兒童繪本(2018年5期)2018-04-12 16:45:32
關注用戶
商用汽車(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
基于Nutch的醫療搜索引擎的研究與開發
主站蜘蛛池模板: 91在线精品免费免费播放| 激情综合五月网| 日本影院一区| 国产日本欧美在线观看| 日本精品视频一区二区| 国产成年女人特黄特色毛片免| 在线观看免费AV网| 亚洲一区二区三区国产精华液| 欧洲成人免费视频| 全部免费特黄特色大片视频| 国产一级毛片网站| 韩日免费小视频| a在线亚洲男人的天堂试看| 2020极品精品国产| 精品欧美一区二区三区在线| 日韩高清成人| 最新国产高清在线| 亚洲第一视频网站| 中文字幕日韩欧美| 免费国产无遮挡又黄又爽| 精品一区二区三区自慰喷水| 国产97公开成人免费视频| 99福利视频导航| 久久性妇女精品免费| 欧美有码在线| 98精品全国免费观看视频| 中文国产成人精品久久| 欧美一级高清免费a| 国产成人8x视频一区二区| www.亚洲一区| 强奷白丝美女在线观看 | 丝袜国产一区| 国产一在线观看| 青草视频免费在线观看| 成人免费网站在线观看| 国产呦精品一区二区三区下载 | 91伊人国产| 国产成人精品一区二区三区| 亚洲色图欧美在线| 无码专区第一页| 亚洲精品无码高潮喷水A| 日韩欧美中文字幕一本| 毛片网站在线看| 中文字幕在线永久在线视频2020| 免费观看国产小粉嫩喷水| 免费无码AV片在线观看国产| 国产成人精品2021欧美日韩| 久久精品无码中文字幕| 亚洲国产日韩视频观看| 九色在线观看视频| 无码专区国产精品一区| 自慰高潮喷白浆在线观看| 久久伊人操| 夜精品a一区二区三区| 亚洲天堂.com| 久久人午夜亚洲精品无码区| 这里只有精品在线播放| 夜精品a一区二区三区| 色噜噜综合网| 综合色在线| 伊人久久综在合线亚洲2019| 日本在线国产| 热久久综合这里只有精品电影| 亚洲一区二区约美女探花| 国产在线一区二区视频| 亚洲人成影视在线观看| 日韩欧美中文| 午夜毛片福利| 亚洲91在线精品| 九九热精品在线视频| 久久综合色播五月男人的天堂| 国产91丝袜在线播放动漫| 成人午夜福利视频| 凹凸精品免费精品视频| 日本三级精品| 精品成人一区二区| 日韩不卡高清视频| 亚洲国产系列| 国产91丝袜在线观看| 亚洲美女高潮久久久久久久| 国产91精品调教在线播放| 青青久在线视频免费观看|