Python操作Solr索引库

Posted 想54256

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python操作Solr索引库相关的知识,希望对你有一定的参考价值。

增加/更新(overwrite=True)

# coding=utf-8
import requests

data = {"add":{ "doc":{"id":"10001","item_title":"我是一个大好人"}}}     # 要添加的数据

params = {"boost":1.0,"overwrite":"true","commitWithin":1000}   # overwrite:如果solr中已经有这个id的数据,将其覆盖

url = ‘http://127.0.0.1:8080/solr/collection1/update?wt=json‘   # 请求url

headers = {"Content-Type": "application/json"}  # 请求头(表示内容是json格式的)

r = requests.post(url, json = data, params = params, headers = headers) # 发送请求

print(r.text)   # {"responseHeader":{"status":0,"QTime":2}}

查询

import requests


item = "我是"     # 搜索字段

url = ‘http://127.0.0.1:8080/solr/collection1/select?q=item_title:"\%s"&wt=json&indent=true‘%item   # 请求url

# verify=True -->检查某个主机的SSL证书
r = requests.get(url, verify = False)   # 发送请求,相应:r = <Response [200]>
r = r.json()    # 将其转成json格式

print(r)
"""
{
‘responseHeader‘: {‘QTime‘: 1, ‘status‘: 0, ‘params‘: {‘q‘: ‘item_title:"\\我"‘, ‘indent‘: ‘true‘, ‘wt‘: ‘json‘}},
‘response‘: {‘numFound‘: 1, ‘start‘: 0, ‘docs‘: [{‘_version_‘: 1597870382723891200, ‘id‘: ‘100001‘, ‘item_title‘: ‘我是一个大好人‘}]}
}

numFound --> 查到多少条相关数据
docs --> 返回的查询集(列表)
"""

 

以上是关于Python操作Solr索引库的主要内容,如果未能解决你的问题,请参考以下文章

solr分布式索引实战分片配置读取:工具类configUtil.java,读取配置代码片段,配置实例

solrj操作solr索引库(流程)

Solr学习

Solr的工作原理以及如何管理索引库

Solr

Solr的工作原理以及如何管理索引库