elasticsearch,pyes,Python,elasticsearch,Pyes" /> elasticsearch,pyes,Python,elasticsearch,Pyes" />

Python 使用pyes中的elasticsearch无法调用NoneType

Python 使用pyes中的elasticsearch无法调用NoneType,python,elasticsearch,pyes,Python,elasticsearch,Pyes,我的代码是: import pyes conn = pyes.ES(myes_path) siplist =['a','b','c'] diplist = ['d','e','f'] bf = pyes.filters.BoolFilter() bf.add_must(pyes.filters.TermsFilter('sip',siplist)) bf.add_must(pyes.filters.TermsFilter('dip',diplist)) fq = pyes.query.F

我的代码是:

import pyes

conn = pyes.ES(myes_path)

siplist =['a','b','c']
diplist = ['d','e','f']

bf = pyes.filters.BoolFilter()
bf.add_must(pyes.filters.TermsFilter('sip',siplist))
bf.add_must(pyes.filters.TermsFilter('dip',diplist))

fq = pyes.query.FilteredQuery(pyes.query.MatchAllQuery(),bf)
res = conn.search(fq,'hhhhh')
print res.total
我总是会遇到这样的错误:

bits=错误。拆分(“[”,1)类型错误:“非类型”对象不可调用


有人知道问题出在哪里吗?

bits=error.split这条线在哪里?您可以发布一个可复制的示例(我不知道myes_路径代表什么?这是一个数据文件吗?),可能还有Python错误的堆栈跟踪。听起来你的错误好像在传递给pyes的值中。嗨,Rahul和Andrew,谢谢你的回复。我在其他数据集上尝试了我的代码,刚刚新的,它工作了,但当我把diplist列成一个长列表时,我的意思是len(diplist)是一个大值,比如160000,它显示“error.split”(“[”,1)TypeError:“NoneType”对象无法再次调用。这是因为diplist的长度超过了pyes设置的最大值吗?并且,当我进行搜索时,我可以执行类似res=conn.search(fq,['hhhhh','gggg']),其中['hhhhhh','gggg']表示索引列表,这在pyes中有效吗?您应该添加完整的回溯位=error.split这行在哪里?您可以发布一个可复制的示例(我不知道myes_路径表示什么?这是数据文件吗?),可能还有Python错误的堆栈跟踪。听起来你的错误好像在传递给pyes的值中。嗨,Rahul和Andrew,谢谢你的回复。我在其他数据集上尝试了我的代码,刚刚新的,它工作了,但当我把diplist列成一个长列表时,我的意思是len(diplist)是一个大值,比如160000,它显示“error.split”(“[”,1)TypeError:“NoneType”对象无法再次调用。这是因为diplist的长度超过了pyes设置的最大值吗?而且,当我进行搜索时,是否可以执行res=conn.search(fq,['HHHHHH','GGGGGG']),其中['HHHHHHH','GGGGGG']表示索引列表,这在pyes中有效?您应该添加完整的回溯