问题标签 [pysolr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
42551 浏览

python - 如何向 PYTHONPATH 添加一些东西?

我将一个包(称为 pysolr 2.0.15)下载到我的计算机上,以便与 Haystack 一起使用。说明要求我将 pysolr 添加到我的 PYTHONPATH 中。

这到底是什么意思呢?提取 pysolr 文件后,我运行了命令 python setup.py install ,仅此而已。那做了什么,我还需要做什么吗?

谢谢您的帮助!

0 投票
2 回答
2320 浏览

django - Django、Haystack、Solr 和 Boosting

TLDR;

django、django-haystack 和 solr 中的各种 boosting 类型如何协同工作?

我无法让最明显的搜索结果首先出现。如果我搜索caring for others并获得 10 个结果,带有标题的对象caring for otherscaring for yourself.

文档提升

我已经记录了提升Category对象的因子,factor = 2.0 - ((the mptt tree level)/10)根节点为 1.9,二级为 1.8,三级为 1.7,依此类推。(或 190%、180%、170%……等等)

场增强

标题被boost=1.5150% 的正因素提升 内容被boost=.5负因素 50%提升

术语提升

我目前没有增加任何搜索词。

我的目标

我想获得结果类别和文章的列表(在我直接获得类别结果之前,我会忽略文章)。类别的权重高于文章,标题的权重高于内容。此外,我正在尝试将根类别节点的权重高于子节点。

我觉得我在某处遗漏了一个关键概念。

信息

我正在使用 haystack 的内置搜索表单和搜索视图。

我正在使用以下包/库版本:

我的索引类

我的搜索模板在templates/search/categorization/category_text.txt

更新

我注意到,当我{{ object.content }}从搜索模板中取出时,这些记录开始以预期的顺序出现。为什么是这样?

0 投票
1 回答
755 浏览

django - 为使用 Solr 作为后端的 Django Haystack 编写 Django 测试

我正在使用 Django 1.4、Django-Haystack 2.0 和 Solr (pysolr 2.0.15)。我必须在 Django 中为 Haystack 编写测试用例。我已经为模型编写了索引并定义了一些函数,例如index_queryset. 所以,现在我正在修复如何编写相同的测试用例。

0 投票
1 回答
534 浏览

python - Django Haystack Solr manage.py rebuild_index TypeError: cannot serialize 1.0 (type float)

我尽量不寻求帮助并自己解决,但这非常困难,我无法弄清楚如何解决它。我正在使用 Python 2.7 和 Django 1.4。我使用 Tomcat 7.0 和 Solr 作为 Haystack v2 beta 的后端。我安装了 Pysolr v 3。Apache Tomcat 服务运行正常,我可以去 127.0.0.1:8000/solr/admin。我运行 manage.py build_solr_schema 并将该 schema.xml 文件放入我的 C:\solr\conf 文件夹中。

作为最后一步,我想运行 manage.py rebuild_index。当我在命令提示符中键入并单击 Enter 时,我会收到通常的消息:

然后,当我输入“y”并再次单击输入时,我得到以下信息:

请帮忙,因为我已经为此苦苦挣扎了一段时间。我已经让这个设置在我的家用电脑上工作,但我工作的电脑性能不佳。非常感谢您提前。

0 投票
1 回答
1454 浏览

django - Haystack UnicodeDecodeError

我在 Django 上使用 haystack 和 solr。我得到 UnicodeDecodeError ,我认为原因是数据库中的 unicode 数据要么转换为 str ,要么解码为 utf-8 ,这在通过 httplib 发送或打印到控制台时会产生更高的 UnicodeDecodeError 。
我认为问题应该在 haystack full_prepare 函数之前,因为我后来检查数据已经被破坏了。
有什么想法吗?
我 setup.pyed install (haystack, pysolr, django) 并使用了来自http://www.lfd.uci.edu/~gohlke/pythonlibs/的 lxml 二进制文件

0 投票
1 回答
731 浏览

datetime - Solr:查询本周添加的文档的最佳方式是什么?

好吧,伙计们。所以我希望我的查询能够命中相同的过滤器缓存,我真正不想做的是在我的代码中计算一周的开始并基于此构造查询。有没有办法让 solr 根据周返回?

我在这里找不到任何东西:http: //docs.lucidworks.com/display/lweug/Solr+Date+Format Using [NOW/DAY-7DAYS TO NOW/DAY+1DAY] 不会有帮助,因为它不知道开始和结束星期。

0 投票
1 回答
2706 浏览

python - 如何在 PySolr 中使用构面 - 似乎无法显示构面结果

(我已经看到了与此类似的问题 - 但似乎无法解决以下为什么不起作用!)

嗨,我有一个正在运行的 solr 本地实例并进行以下调用(通过浏览器中的 url 框):

并得到下面的结果(见结果 1)。然后我尝试使用 Python/PySolr 进行等效操作:

并且似乎没有得到任何结果(如果我制作 'rows': 10 然后我得到 10 个结果) - 但无论哪种情况,我似乎都没有得到任何方面。

任何想法如何解决这个问题?在我弄清楚这一点后,我还希望使用 StatsComponent 功能(例如 &stats=true&stats.field=q_visits)

提前致谢

结果 1:

0 投票
1 回答
706 浏览

python - 如何在 pysolr 中使用 facet

我已经成功地用 pysolr 构建了一个 python 搜索应用程序。到目前为止,我使用了两个字段:id 和 title。现在我想推送两个不同版本的标题;删除停用词后的原件和标题。有任何想法吗?以下代码有效:

但是这个没有:

有任何想法吗?

编辑:

下面是例外:

0 投票
1 回答
1252 浏览

solr - 将 solr/pysolr 与烧瓶 sqlalchemy 一起使用

我正在尝试将 solr 设置为与我通过烧瓶 sqlalchemy orm 使用的 postgres db 一起使用。我为此目的找到了库 pysolr,但不清楚如何在 sqlalchemy 模型中设置挂钩以更新 solr 索引。有没有例子?

pysolr 建议通过 solr.add 手动插入文档,但不清楚如何分隔不同数据库表的索引。

在做了一些研究之后,我想出了以下方法,我想知道这是否是正确的方法:

  1. 在 ORM 模型中,挂钩 after_insert、after_update、after_remove 和 after_commit 并在这些事件中插入/更新/删除 solr 中的对象数据。

  2. 为了分离不同模型的数据,在 solr 文档的“id”字段中使用表名作为前缀。solr_id = db_table_name + db_id

  3. 当您进行搜索时,获取所有结果,手动过滤与所需 db 表匹配的那些,提取 id,根据这些 id 查找 db 并使用这些 db 结果。

有没有更好的方法来做到这一点?谢谢。

0 投票
0 回答
186 浏览

solr - 如何将基于 Solr bf 的查询转换为基于 bq 的语法?

当前工作查询:

bf 加法提升适用于所有领域,我想排除field3这个,如何将此qf&bf语法更改为qf&bq语法,以便提升只能应用于field1field2而不是field3