接触lucene

上周末,朋友找我做个程序。在简单来说就是在博客里面搜索一些关键字,如果重复出现超过一定次数,那么就把这个博客文章列出来。
其实就是很简单的搜索。如果懂搜索的人,应该很简单,我没搞过,所以不确定能不能做得比较好。这几天看了lucene。有了些眉目。

大名鼎鼎的lucene,虽然之前没用过,但还是听说过的。我对它初步的理解就是它有2个功能,对内容建立索引、在建好的索引上搜索。
我要做的事情是:

  1. 把博客的网页抓到本地
    暂时用的自己的博客备份再做测试,怎么抓网页还没有具体考虑,也许很简单,也许很复杂。
  2. 对抓下来的网页建立索引
    1. html的解析
      参照了《使用Lucene进行全文检索(二)—得到有效的内容》,使用 HTML Parser
    2. 中文分词
      中文分词是个很难的问题,幸好我这里是做一件很简单的事情,如果我以实现简单为原则,也不太考虑效率的话,还是有一些现有的东西拿来用就行了的。
      参照了《构建基于词典的Lucene分析器》
  3. 在建立的索引上搜索,并做结果处理
    要统计关键字在文章中出现的次数,对lucene还不是很熟悉,也许用它就能实现,I hope so。否则的话,…
  4. 做一个界面,把前三项包装起来。

有些细节暂时没有仔细想过,文件编码,效率等等。

附几篇用到过的资料:
使用Lucene进行全文检索(一)—处理索引

使用Lucene进行全文检索(三)—进行搜索

Lucene:基于Java的全文检索引擎简介

lucene中国,虽然没什么东西,但上面的入门,原理,分词对我来说还是很有用的。

Comments