python操作solr
solr接收http请求,所以使用requests库操作solr就可以
添加
data = {"add": {"doc": params, "commitWithin": 1000}} headers = {"Content-type": "application/json"} re = requests.post(url=url, data=json.dumps(data), headers=headers)
查询
params = list() params.append(('q', "id:" + id)) response = requests.post(url=url, data=params)
很多时候请求文本存在特殊字符,所以需要转义(或者用括号括起来)
def escape_query_chars(s): escape_chars = set( ('\', '+', '-', '!', '(', ')', ':', '^', '[', ']', '"', '{', '}', '~', '*', '?', '|', '&', '', '/', ' ','t')) arr = [c for c in s if (c not in escape_chars)] return "".join(arr).replace("xe3x80x80", "")