摘要 隨著信息量的不斷增長,搜索引擎在網站中所起到的作用顯得越來越重要,如何通過搜索引擎獲得豐富的信息,成為用戶關心的重要問題。通過設計實現基於字典的中文切詞係統,並對不同格式的文件進行數據挖掘,改進北京市精品課程平台的搜索引擎。
關鍵詞 Lucene;中文切詞;搜索;數據挖掘;SEO
中圖分類號:TP391 文獻標識碼:A 文章編號:1671-489X(2010)09-0003-03
Design and Implementation of Chinese Tokenize System in Beijing Quality Course Platform//Zhou Shuyi, Xu Xiaoliang
Abstract With the growing amount of information, Search engine is playing a more and more important role in a web Site. How to get rich information through the search engine has become a significant fact of the site users. This article discussed mining different format date and implements a search engine, including a Chinese tokenize system based on dict. It has improved the search engine of Beijing Quality Course Platform.
Key words Lucene; Chinese tokenize; search; date mining; SEO
Author’s address Modern Technological Center in Education of BJUT, Beijing, China 100022
一般的教學與課程網站內的搜索條目,都是基於關鍵字的搜索。例如,輸入課程名,返回結果是網站所包含此課程的信息;輸入學校名,返回的結果是網站所包含此學校的課程信息。無論是課程名還是學校名,等等,都是基於關鍵字的搜索。
正在建設中的北京市精品課程網站由於規模較大,網上資源也越來越豐富,大量的課件信息不斷增加到網站中。如果用戶想獲取包含某一條關鍵字的課件,在現有的搜索條件下,需要通過輸入關鍵字,找到相應的課程,然後在課程網頁下獲取課件。過程既費時,獲取的信息又不全麵。如何能夠直接通過網站內容的搜索,就可以獲取所有包括內容關鍵字的課件信息?筆者在分析搜索引擎架構的基礎上,設計並實現一個基於內容的搜索引擎,包括對中文進行處理分析的切詞係統和基於Lucene框架的索引係統。搜索引擎采用Java語言編寫,實現對服務器上存儲的Word、Excel、PPT、PDF、txt格式的數據挖掘。
1 理論基礎
1.1 LuceneLucene是Apache軟件基金會Jakarta項目組的一個子項目,是一個開放源代碼的全文檢索引擎工具包,即它不是一個完整的全文檢索引擎,而是一個全文檢索引擎的架構,提供完整的查詢引擎和索引引擎,部分文本分析引擎(英文與德文2種西方語言)。Lucene的目的是為軟件開發人員提供一個簡單易用的工具包,以方便在目標係統中實現全文檢索的功能,或者是以此為基礎建立起完整的全文檢索引擎。
Lucene可以對任何數據做索引和搜索。不管數據源是什麼格式,隻要它能被轉化為文字的形式,就可以被Lucene所分析利用。
1.2 API
1)Apache POI。Microsoft的Office格式非常複雜,往往包含各種文檔屬性信息、文檔內的格式信息,有時候甚至包含複合文檔。文檔屬性信息主要包括文檔的標題、主題、摘要、類別、關鍵詞等;文檔內部的格式信息包括文檔的字體、字號、表格、圖表、其他OLE2的正文元素等。
POI就是通過OLE2模式訪問Office文檔,讀取和修改Office的複雜文檔格式。針對不同的Office文檔類型,POI分別有針對性地提供訪問接口,包括解析Word接口的HWPF、Excel的HSSF、PPT的HSLF,讀取Office文檔標準屬性的HPSF。