跳转到主要内容

Solr搜索服务的客户端

项目描述

solrpy

Build Status

solrpy是Solr的Python客户端,Solr是一个基于Lucene的企业级搜索引擎。solrpy允许您将文档添加到Solr实例,然后使用Python对Solr执行查询并收集搜索结果。

概述

基本思路是这样的

import solr

# create a connection to a solr server
s = solr.SolrConnection('http://example.org:8083/solr')

# add a document to the index
doc = {
  "id": 1,
  "title": "Lucene in Action",
  "author": ["Erik Hatcher", "Otis Gospodnetić"]
}
s.add(doc, commit=True)

# do a search
response = s.query('title:lucene')
for hit in response.results:
    print hit['title']

更强大的查询

查询、分面、高亮显示等可选参数可以作为Python参数传递给查询方法。您只需将点表示法(例如,facet.field)转换为下划线表示法(例如,facet_field),以便它们可以作为参数名称使用。

例如,假设您想获取搜索结果中的分面信息:

response = s.query('title:lucene', facet='true', facet_field='subject')

如果参数接受多个值,您只需将它们作为列表传递:

response = s.query('title:lucene', facet='true', facet_field=['subject', 'publisher'])

测试

要运行测试,您需要一个正在运行的Solr实例。最简单的方法是

curl -sSL https://raw.githubusercontent.com/moliware/travis-solr/master/travis-solr.sh | SOLR_VERSION=4.10.3 SOLR_CONFS=tests bash

社区

如果您有想法或建议,请随时加入我们的讨论列表

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面