当前位置: 首页 > 软件库 > 程序开发 > 搜索引擎 >

Pysolr

Solr 轻量的 Python 应用
授权协议 BSD
开发语言 Python
所属分类 程序开发、 搜索引擎
软件类型 开源软件
地区 不详
投 递 者 云和同
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Pysolr,是基于Python的Apache Solr轻量级封装。它提供了服务器查询并返回基于查询的结果接口。

特性:

  • 基本功能,选择、更新和删除

  • 索引优化

  • 超时支持

使用环境:

  • Python 2.7 - 3.5

  • Requests 2.0+

  • Optional - simplejson

  • Optional - kazoo for SolrCloud mode

示例代码:

# If on Python 2.X
from __future__ import print_function
import pysolr
# Setup a Solr instance. The timeout is optional.
solr = pysolr.Solr('http://localhost:8983/solr/', timeout=10)
# How you'd index data.
solr.add([
    {
        "id": "doc_1",
        "title": "A test document",
    },
    {
        "id": "doc_2",
        "title": "The Banana: Tasty or Dangerous?",
    },
])
# Later, searching is easy. In the simple case, just a plain Lucene-style
# query is fine.
results = solr.search('bananas')
# The ``Results`` object stores total results found, by default the top
# ten most relevant results and any additional data like
# facets/highlighting/spelling/etc.
print("Saw {0} result(s).".format(len(results)))
# Just loop over it to access the results.
for result in results:
    print("The title is '{0}'.".format(result['title']))
# For a more advanced query, say involving highlighting, you can pass
# additional options to Solr.
results = solr.search('bananas', **{
    'hl': 'true',
    'hl.fragsize': 10,
})
# You can also perform More Like This searches, if your Solr is configured
# correctly.
similar = solr.more_like_this(q='id:doc_2', mltfl='text')
# Finally, you can delete either individual documents...
solr.delete(id='doc_1')
# ...or all documents.
solr.delete(q='*:*')
# For SolrCloud mode, initialize your Solr like this:
zookeeper = pysolr.Zookeeper("zkhost1:2181,zkhost2:2181,zkhost3:2181")
solr = pysolr.SolrCloud(zookeeper, "collection1")
  • 使用pysolr连接slor库时,出现以下错误 solr = pysolr.Solr('http://xxx.xxx.xxx.xxx:8080/solr/#/cnpatent/query', timeout=10) dict = {'start':0, 'rows':10} result = solr.search('name:my_name',**dict) name = 'tyler' dat

  • http://ae.yyuap.com/pages/viewpage.action?pageId=920314   SolrCloudpy文档:http://solrcloudpy.github.io/solrcloudpy/ 转载于:https://www.cnblogs.com/zy900406/p/6109257.html

 相关资料
  • 同时,当前稳定的Debian版本仍然没有Java 11软件包(Ubuntu在openjdk-11软件包下安装了Java10),这就是为什么不稳定的sid版本被用于基本docker映像 当前可用的Oracle openjdk-11映像构建未剥离的模块,该模块具有数百兆字节,必须单独剥离: 从openjdk创建的JLink运行时映像大小(特别是libjvm.so)非常大。预期它会小得多。 解决方案:h

  • 本文向大家介绍轻量级的Web框架Flask 中模块化应用的实现,包括了轻量级的Web框架Flask 中模块化应用的实现的使用技巧和注意事项,需要的朋友参考一下 Flask是一个轻量级的Web框架。虽然是轻量级的,但是对于组件一个大型的、模块化应用也是能够实现的,“蓝图”就是这样一种实现。对于模块化应用的实现,在Flask 0.2版本中进行了设计。本文暂时不对“蓝图”做详细的介绍,而是先从0.2版本

  • 一个简单的Spring Boot应用程序仅打印一个“Hello World”,当它打包为一个可部署的WAR时,它的大小为11.5MB。当我爆发战争时,WEB-INF/lib文件夹是库太多的根本原因。 如何仅使用最少的必需/依赖库创建WAR? 在提到spring-boot-starter-tomcat的作用域时,嵌入式Tomcat服务器是否仍与WAR一起打包? 我在玩Spring测试套件(STS)附

  • 问题内容: 受问题启发,为什么Java 11基本Docker映像这么大?(openjdk:11-jre-slim)我发现Java世界中的这个话题仍然没有解决。 至于常见问题/陷阱(在上面的票证中讨论): JRE没有作为单独的“包”分发。应改用JDK的模块 Oracle OpenJDK 11不支持Linux Alpine,因此无法轻松创建 轻量级 映像 同时,当前稳定的Debian版本仍然没有Jav

  • 本文向大家介绍轻松理解Python 中的 descriptor,包括了轻松理解Python 中的 descriptor的使用技巧和注意事项,需要的朋友参考一下 定义 通常,一个 descriptor 是具有“绑定行为”的对象属性。所绑定行为可通过 descriptor 协议被自定义的 __get__() , __set__() 和 __delete__() 方法重写。如果一个对象的上述三个方法任意

  • 登录企业管理,轻应用-创建轻应用 设置轻应用头像、名称、开发者权限、设置管理员,创建轻应用

  • 1.手机版 删除方法:轻应用右上角详情-右上角菜单-移除应用   2.电脑版 删除方法:轻应用右上角详情-设置-移除轻应用  

  • 1.手机版 添加方法:工作台-添加-添加轻应用   2.电脑版 添加方法:工作台-添加-添加轻应用