BECer-GAE(google app engine)中文分词和全文搜索模块

BECer是纯python实现,专门为google app engine而开发的中文分词和全文搜索模块,BECer的特点是快速而且低内存占用.不必担心google app engine的cpu时间限制和内存限制.

模块包含

__init__.py -- 目录即模块

search.py -- 从App Engine SDK的search模块修改而来,增加了中文分词功能,保留原有的英文分词.

segment.py -- 中文分词切割模块,用来完成中文句子的切割.使用简单的机械分词算法

gbk.py -- 包含所有 gbk 字符集相对应的 unicode 字符.用于过滤原文,去除非中文部分.

db.zip -- 中文词库


使用方法

首先将模块解压缩至应用的根目录下,

导入BECer分词搜索模块,

import becer

from google.appengine.ext import db

创建模型

class Example(becer.Model):

content = db.TextProperty()

#定义需要分词和全文搜索的属性

@classmethod

def SearchableProperties(cls):

return [['content']]

实例化模型的类,并写入一个实体

entity = Example()

entity.content = db.Text('BECer是纯python实现,专门为google app engine而开发的中文分词和全文搜索模块,BECer的特点是快速而且低内存占用.不必担心google app engine的cpu时间限制和内存限制.'.decode('utf-8'))

entity.put()

搜索

entities = Example.all().search('中文分词'.decode('utf-8'), ['content'])

for entity in entities:

print entity.content.encode('utf8')


演示 [url]http://sub-api.okbad.com/search[/url]

下载BECer源代码 [url]http://www.freedodo.com/media/agxmcmVlZG9kb2Jsb2dyDQsSBU1lZGlhGKOTBAw/becer.zip?a=download[/url]

原文 [url]http://www.freedodo.com/2011/04/25/GAE%28google-app-engine%29%E4%B8%AD%E6%96%87%E5%88%86%E8%AF%8D%E5%92%8C%E5%85%A8%E6%96%87%E6%A3%80%E7%B4%A2%E6%A8%A1%E5%9D%97-python.html[/url]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值