coreseek搭配使用python源

这篇博客介绍了如何在Ubuntu环境下配置和使用CoreSeek搭配Python源,详细讲解了配置文件csft_demo_python.conf和__init__.py的内容,以及如何处理Python脚本执行的问题。
摘要由CSDN通过智能技术生成

网络资料真少啊,官方给的文档还算详细,但是没有交流就没有成功,开源的意义


Ubuntu环境下使用:


不知道为啥,搭配好环境后,原本在cmd栏下直接运行python的脚本命令找不到了,只能用运行python2.7来执行相同操作,求解


下载的coreseek自己提供的测试数据和conf文件,配置主要是将 path = /usr/bin/python2设定为电脑装有python可执行程序的位置,我的机器位置如上


python路径定义提供的是python源的位置,脚本的位置


源定义基本不用改,在python文件中采用相同格式即可


csft_demo_python.conf内容:

# python路径定义
python
{
    path = /usr/local/coreseek/etc/pysource            #BSD、Linux环境下设置
    path = /usr/local/coreseek/etc/pysource/csft_demo    #BSD、Linux环境下设置
    #path = etc/pysource            #Windows环境下设置,最好给出绝对路径
    #path = etc/pysource/csft_demo    #Windows环境下设置,最好给出绝对路径
}
 
#源定义
source python
{
    type = python
    name = csft_demo.MainSource #对应etc/pysource/csft_demo/__init__.py中的MainSource  
}
 
#index定义
index python
{
    source            = python             #对应的source名称
    path            = /usr/bin/python2
    docinfo            = extern
    mlock            = 0
    morphology        = none
    min_word_len        = 1
    html_strip                = 0
    charset_dictpath = /usr/local/mmseg3/etc/    #BSD、Linux环境下设置,/符号结尾
    #charset_dictpath = etc/                        #Windows环境下设置,/符号结尾
    charset_type        = zh_cn.utf-8
}


__init__.py内容:

# -*- coding:utf-8 -*-
# coreseek3.2 python source演示
# author: HonestQiao
# date: 2010-06-03 11:46
 
class MainSource(object):
    def __init__(self, conf):
        self.conf =  conf
        self.idx = 0
        self.data = [
            {'id':1, 'subject':u'国土部:5千万亩耕地中重度污染 不能再耕种', 'context':u'原标题:王世元: 中重度污染耕地5000万亩 每年将投数百亿治理修复新华网北京12月30日电(记者 陶叶)30日上午,国务院新闻办公室举行新闻发布会,请国土资源部副部长、国务院第二次全国土地调查领导小组办公室主任王世元和国家统计局副局长张为民等介绍第二次全国土地调查主要数据成果。', 'published':1270131607, 'author_id':1},
            {'id':2, 'subject':u'Twitter主页改版 推普通用户消息增加趋势话题', 'context':u'4月1日消息,据国外媒体报道,Twitter本周二推出新版主页,目的很简单:帮助新用户了解Twitter和增加用户黏稠度。', 'published':1270135548, 'author_id':1},
            {'id':3, 'subject':u'张艺谋超生游击队', 'context':u'Opera一直都被认为是浏览速度飞快,同时在移动平台上更是占有不少的份额。', 'published':1270094460, 'author_id':2},
        ]
 
    def GetScheme(self):  #获取结构,docid、文本、整数
        return [
            ('id' , {'docid':True, } ),
            ('subject', { 'type':'text'} ),
            ('context', { 'type':'text'} ),
            ('published', {'type':'integer'} ),
            ('author_id', {'type':'integer'} ),
        ]
 
    def GetFieldOrder(self): #字段的优先顺序
        return [('subject', 'context')]
         
    def Connected(self):   #如果是数据库,则在此处做数据库连接
        pass
 

#源码中的输入参数只有一个,但是我的机器报错,说需要输入一个,但是提供了两个,因为coreseek的不透明,我就直接在这里加了一个_,没有问题

    def NextDocument(self,_):   #取得每一个文档记录的调用
        if self.idx < len(self.data):
            item = self.data[self.idx]
            self.id = item['id'] #'docid':True
            self.subject = item['subject'].encode('utf-8')
            self.context = item['context'].encode('utf-8')
            self.published = item['published']
            self.author_id = item['author_id']
            self.idx += 1
            return True
        else:
            return False
 
if __name__ == "__main__":    #直接访问演示部分
    conf = {}
    source = MainSource(conf)
    source.Connected()
 
    while source.NextDocument():
        print "id=%d, subject=%s" % (source.id, source.subject)
    pass
#eof

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值