使用python将PDF,DOC,DOCX转换为文本格式的解决方案

时间:2011-07-28 06:00:03

标签: python

我正在开发一个全文搜索引擎,用于索引流行的二进制格式。我知道已经存在这些问题(和解决方案),但我发现很难找到一个:

  • 跨平台
  • 立即支持DOC,DOCX和PDF格式
  • 易于使用python
  • 可以在主要共享主机中设置

4 个答案:

答案 0 :(得分:1)

  • 对于PDF,我建议PDFminer
  • 尝试docx模块(我自己没有使用过)
  • 我不知道任何可以读取.doc个文件的纯python模块。
  • 有一些命令行工具可以从.doc文件中提取文本:antiword和catdoc(可能还有其他文件)。如果软件包安装在您的共享主机上,您可以使用subprocess来支持这些工具。可通过Cygwin在Windows上获得。
  • Apache POI是一个可以从Office文档中提取文本的Java库。如果您的共享主机安装了Java,您可以编写一些Java(或Jython)代码并使用subprocess执行。

答案 1 :(得分:0)

如果在服务器端您可以使用OpenOffice,则可以使用unoconv: Convert between any document format supported by OpenOffice

答案 2 :(得分:0)

一种可能的解决方案是使用谷歌文档从二进制.doc文件中提取文本内容。您将文档上传到谷歌文档,然后下载文本内容。这是一个相当慢的过程,但它是我所知道的唯一“纯Python”解决方案,因为除了网络访问之外它不需要任何外部工具。如果允许您在主机上安装外部工具,如catdoc或antiword是一个更好的解决方案。

答案 3 :(得分:0)

Textract为每种文件使用默认工具。

https://github.com/deanmalmgren/textract