使用Algolia搜索(提取文本)PDF文件

时间:2016-07-28 15:35:57

标签: php search algolia

对于拥有大量PDF文件的客户来说,这只是一个推测性的想法。

Algolia在他们的常见问题解答中说,要搜索PDF文件,首先需要从文件中提取文本。你会怎么做?

我设想系统工作的方式是:

  • 客户通过CMS上传PDF
  • CMS将某些服务/程序调用到 提取文本
  • Algolia以某种方式对提取的内容进行索引 链接到原始PDF

它需要是一个自动化系统,因为客户不应该告诉它索引。 它将使用PHP构建,可能是在Ubuntu上运行的Laravel。

什么软件/服务可以从PDF中提取文本,并且是链接'所需的任何魔术。这与PDF文件?

我也很高兴为其他搜索服务提供建议。

2 个答案:

答案 0 :(得分:4)

幸运的是,从pdf中提取文本是一个已被多次覆盖的主题。在命令行中,您可以使用pdftotext(在Linux或Mac上可用)或在代码中使用Apache Tika库(您可以为其找到PHP wrapper)。

为避免记录中出现过多噪音,我建议您拆分文本并为每个段落创建一条记录。然后,您可以使用Algolia的distinct功能对结果进行重复数据删除。

您应该已经在某个地方拥有指向文件的链接,只需将它们存储在您的记录中,然后在您的前端,您就可以轻松地使用例如autocomplete.js或{{{{}}创建指向它们的链接3}}。

答案 1 :(得分:1)

对于仍在寻找解决方案的任何人,我都整理了一个GitHub存储库,该存储库正是这样做的:https://github.com/PDFTron/pdftron-document-search

当用户使用React + Firebase + Algolia上传文档时,文本提取将在客户端进行。

您可以观看快速视频,逐步浏览示例应用程序:https://youtu.be/IQATnzHTp7Q

如果您有任何疑问,请告诉我。