下面的python代码添加了一个文档,但是没有json内容:
solr_instance = pysolr.Solr('http://192.168.45.153:8983/solr/test', timeout=60)
json_filename = '/path/to/file/test.json'
argws = {
'commit': 'true',
'extractOnly': False,
'Content-Type': 'application/json',
}
with open(json_filename, 'rb') as f:
solr_instance.extract(f, **argws)
solr_instance.commit()从命令行中使用curl如预期的那样工作:
$ curl 'http://192.168.45.153:8983/solr/test/update?commit=true' \
--data-binary @/path/to/file/test.json \
-H 'Content-Type: application/json'该文件的内容如下:
$ cat /cygdrive/w/mist/test.json
--> [{"x": "a","y": "b"}]我用的是pysolr 3.6.0和solr 6.5.0
发布于 2017-04-20 10:07:45
extract()方法引用针对ExtractingRequestHandler的请求,该请求用于从丰富的文档(如PDF等)中提取内容。
您可以使用常规的.add方法将解码后的JSON提交给Solr:
import json
solr.add(json.load(json_filename))。。应该行得通。
https://stackoverflow.com/questions/43516227
复制相似问题