读书人

用xapian和mmseg实现中文搜索

发布时间: 2012-12-25 16:18:29 作者: rapoo

用xapian跟mmseg实现中文搜索

xapian是一个开源的信息检索项目,类似于lucence,官网地址:http://xapian.org/。

安装:用apt-get可以在ubuntu里安装如下模块:

apt-xapian-index - maintenance tools for a Xapian index of Debian packages

libxapian15 - Search engine library

python-xapian - Xapian search engine interface for Python

如果是用django,可以安装:python-django-djapian - Search API for Django using Xapian

?

mmseg是一个国人写的中文分词模块,网址:http://pypi.python.org/pypi/mmseg/1.3.0;

?

用mmseg加上xapian就可以实现中文搜索的功能了。

?

好了,在我的项目中,原始数据是保存在数据库中的,所以需要从数据库中读出数据,再来建立索引,所以建立索引的代码如下:

?

def search_book(request):            search_words = request.REQUEST.get('search_words')    try:        page = int(request.GET.get('page', '1'))    except ValueError:        page = 1    if request.method == 'POST':        page = 1    books = SEARCH.search_by_page(search_words, page)    t=get_template('book/search_result.html')    c=RequestContext(request,locals())    return HttpResponse(t.render(c))

读书人网 >编程

热点推荐