OSGeo中国中心网站添加全文检索功能


发布日期 : 2017-08-16 01:06:31 UTC

访问量: 140 次浏览

经过对网站功能的分析与开发,OSGeo中国中心网站添加了 全文检索的功能。

文本搜索是一个比较复杂的研究课题,尤其是针对中文的搜索。 OSGeo中国中心开始的时候,使用了基于MySQL数据库的检索方法, 只能使用简单的表达式,查询结果也不尽如人意,而且跨库检索, 以及保存为文件的HTML页面的检索都是问题;后来添加使用了 站内百度搜索,效果好了一些,但是也存在网站内容更新慢等 问题,而且一个网站使用了两种检索方法,用户体验非常不好。

全文检索的功能一直想添加,但是一直没有找到好的方式。网站 后台的程序基于 TorCMS, 所以开始的时候找了 Sphinx Search,可以在Python中使用。但是 这个程序配置中文检索比较麻烦,折腾了两天,也没有实现。后来 发现了whoosh,完全使用Python写的全文检索模块。whoosh效率上 可能低一些,但是对于小型的网站,完全够用了;而且不管是 数据库中的内容,还是HTML页面,都可以自由地放到检索 数据库中方便使用。

目前网站只保留了whoosh的检索方式,替换掉基于 MySQL 的 方式,并且去掉了百度站内搜索的功能。

关于whoosh的使用,已经更新到TorCMS的源码中。功能上比较 简单,后期会进行复杂一些的扩展。