问题标签 [xapian]

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 投票
0 回答
140 浏览

django - DB-full-text 或 Haystack 模块更适合我的 Django 搜索功能吗?

我将 Django 与 Python3 和 Postgresql 一起使用

  1. 我读过 Haystack 使用 Elastic Search(我不喜欢 Java),但我看到 Xapian-Haystack 不适用于 Python3(但我之前听说过 Xapian,我认为它很喜欢)。

  2. djorm-ext-pgfulltext 是一个数据库全文搜索模块,我真的不知道在效率方面与以前的选项有什么不同。

(3. 我相信,构建一个简单的搜索模块是最低效的。)

包含模块的列表显示在: https ://www.djangopackages.com/grids/g/search/

0 投票
2 回答
430 浏览

full-text-search - 使用 Xapian Omega 搜索 - 使用通配符或正则表达式

我们在研究档案中遇到了不同的搜索引擎,并浏览了 Xapian-Omega 文档,我们决定尝试一下,因为 Omega 选项似乎是一个合适的解决方案,有几个有趣的搜索选项。

我们在 Linux 服务器(Deb 7)上安装了 Xapian-Omega,并成功测试了设置。但是,我们不确定如何在 Xapian-Omega 中使用或什至启用通配符或正则表达式。

我们读到,对于 Xapian,必须启用通配符选项“QueryParser flags”有人可以澄清一下吗?IE。用一两个例子解释或指出一个页面。

但是我们没有看到太多关于 Omega CGI 示例的信息,尽管后者运行良好,但通配符选项(例如通用通配符的 * 和作为单个字符的 ?),默认情况下似乎没有按预期工作,它们会很有用,即使词干和子字符串等可能是有用的。

例如:能够使用具有一定精度的标准简单野生字符搜索会很有趣,例如:medic* 用于医学医学药物或使用?对于单个字符

Omega 可以识别 Regexp 吗?例如:sep[ae]r[ae]te(\w+)? 或搜索结构化格式,例如电子邮件或信用卡号码或研究论文中的某些公式类型等。

在 Olly Betts 很久以前(开发邮件列表)的一份说明中,关于这个建议是 grep 索引文件,但这会破坏 Omega 的 RAD 优势。

任何使用带有通配符或正则表达式的 Omega 进行搜索的示例都将不胜感激......即使是一个页面的指示,该页面的有关此主题的信息也很好地展示了如何单独使用 Xapian 开发高级搜索的示例(PHP或者 Python 可能)。

(我们暂时不担心索引大小或索引存档时间的最终大幅增加)

0 投票
1 回答
82 浏览

perl - 使用 Perl 从 Xapian 数据库中获取特定数据

我正在编写一个 perl 脚本来从 Xapian 数据库中检索搜索结果。

我使用Search::Xapian模块并尝试了基本的Xapian Query Example。这个基本程序允许进行查询并获得按相关性排序的结果数组。我的问题是该 get_data()方法返回文档中的全部数据(url,filname,abstract,author,...)作为字符串混合在一起。

我在CPAN 模块中搜索了一种逐个获取每个数据的方法,但没有找到。

是否可以一一获取文件名、url、作者...以将它们放入特定变量中?

0 投票
1 回答
100 浏览

python - 如何在 Xapian 中使用不同的 id?

我正在尝试使用 Xapian 实现搜索。我的文档有自己的 id,即字符串。我已经按照教程说的做了:

其中 doc.docno 是标识文档的字符串。但是当我搜索时:

恢复的 docid 只是一个简单的数字。有人知道我是否应该做其他事情吗?

0 投票
1 回答
61 浏览

python - 如何在 Xapian 中更改功能标志

我在我的 Python 代码中使用 Xapian,当我使用时:

queryparser = xapian.QueryParser()

该对象使用许多标志进行初始化:FLAG_BOOLEAN、FLAG_SPEALLING_CORRECTION。我想知道如何更改此标志。我在文档中找到了每个人都做了什么,但没有找到如何改变。

0 投票
0 回答
303 浏览

c++ - 如何让 Xapian 与 MSVC 一起工作?

我想将 Xapian 搜索引擎与我正在开发的 Qt 应用程序一起使用。使用的编译器是 MSVC (Visual Studio 2013)。事实证明,Xapian 下载页面 ( https://xapian.org/download ) 丢失了,该页面本应包含指向 MSVC 的一组 makefile 的链接。

我想也许与其太努力让它在 MSVC 下工作,不如让我们让 MinGW + MSYS 环境来构建和运行这个家伙。但是,我遇到了一个问题。它需要zlib库。

配置:错误:未找到 zlib.h - chert 和 glass 需要(您可能需要安装 zlib1g-dev 或 zlib-devel 包)

构建 zlib 似乎不太容易,因为不是立即运行“配置”脚本,而是建议我检查 /win32 文件夹中的 Makefile.gcc。然而,这不是答案,它似乎并没有做太多。

我可能做错了,或者可能在某个地方打了一个圈。一些帮助将不胜感激。期待一些见解。

我主要关心的是让 Xapian 在 Windows 上工作。

0 投票
1 回答
99 浏览

installation - MacOs 10.12.6:安装 Xapian 时出错:不允许操作

我正在尝试在 MACOS 10.12.6 上从源代码安装 xapian。我能够构建源代码但无法安装它,

错误是:

我在 xapian 目录中按照以下步骤操作:

如果有人可以建议如何解决此错误,那就太好了。

0 投票
1 回答
76 浏览

lucene - 如何在 Xapian 1.4.5 中实现/使用分析器?

我在谷歌搜索但没有找到任何与在 Xapian 中实现分析器相关的线索,甚至 Xapian 可能不支持使用像 lucene 这样的分析器。换句话说,我无法扩展到支持中文。我对吗?

我在 Xapian C++ API 中搜索,只找到可能与提取词有关的TermGenerator 。有一个flag FLAG_CJK_NGRAM,它可以分割UTF-8 CJK单词,比如说ABCD,它会分割成AB、BC、CD和A、B、C、D。这很简单直接。我想我需要一个更准确的解决方案,看来我需要实施或将成熟的解决方案(如jieba)迁移到 Xapian。我对吗?

0 投票
1 回答
1219 浏览

python - How to install xapian with Python 3.6 on Ubuntu 16.04?

I installed Python 3.6 on Ubuntu 16.04 on Docker using the ppa:jonathonf/python-3.6 repository. Now I'd like to install xapian so I can use it with Python. I have not found any ready-made packages, so I am trying to build it from sources. I set PYTHON3 and PYTHON3_LIB parameters to point to Python 3.6. During the build process I get the following error:

ImportError: libxapian.so.30: cannot open shared object file: No such file or directory

I tried xapian versions 1.3.7 and 1.4.5 without luck.

How can I install xapian?

Here's a Dockerfile to reproduce my error:

0 投票
0 回答
48 浏览

visual-c++ - 如何使用 MSVC2017 构建 Xapian 1.4.10?

我已经安装了 MSVC2017、zlib、msys2。在 msys2 中运行 configure 并有一些错误: ./configure CC="cl -nologo" CXX="$PWD/compile cl -nologo" CXXFLAGS=-EHsc AR=lib

配置:加载站点脚本 /etc/config.site
检查与 BSD 兼容的安装... /usr/bin/install -c
检查构建环境是否正常...是
检查线程安全 mkdir -p.. . /usr/bin/mkdir -p
检查gawk... gawk
检查make 是否设置$(MAKE)... 不
检查make 是否支持嵌套变量... 不
检查ustar 格式是否支持UID '1492654'。 ..是
的,检查ustar格式是否支持GID'1049089'......是的,
检查如何创建一个ustar tar档案...... pax
检查make使用的包含样式......没有
检查gcc...... cl - nologo
检查 C 编译器是否工作... no
configure: error: in/d/xapian_proj/xapian-core-1.4.10':
configure: error: C compiler cannot create executables
See
config.log' 了解更多详情

谢谢