python - 如何计算复杂文档(.rtf、.doc、.odt 等)中的字数?

标签 python document openoffice.org word-count

我正在尝试编写一个 Python 函数,该函数在给定文档文件路径的情况下返回该文档中的字数。这对 .txt 文件来说相当容易,并且有一些工具可以让我破解对一些更复杂的文档格式的支持,但我想要一个真正全面的解决方案。

查看 OpenOffice.org 的 py-uno 脚本接口(interface)和支持的格式列表,在 headless OOo 中加载文档并调用其字数统计功能似乎是理想的选择。但是,我找不到任何超越基本文档生成的 py-uno 教程或示例代码,甚至我找到的代码片段都已经过时五年了,不再有效。

无论是否使用 OOo 和 Uno,我如何才能对各种格式的文档进行可靠的字数统计?

最佳答案

在 headless OOo 中加载文档 并调用它的 word-count function

PyODConverter是最近 (11-2009) 使用 OOo 转换多种文件类型的脚本。查看脚本,它基本加载了所有 OOo 支持的文档。

这就是将 OOo 作为 headless 服务启动的方式:

soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;"-nofirststartwizard

然后您只需编写一个小型 Bootstrap ,在命令行上调用 OOo,运行您的脚本,然后关闭 OOo。


关于python - 如何计算复杂文档(.rtf、.doc、.odt 等)中的字数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2256881/

相关文章:

python - PyQt4:如何在修改时更改子窗口的标题

OpenOffice中嵌入图片的命名算法

.net - 如何在 .NET 中创建 OpenOffice 文档

java - 如何在 Liferay DMS 中处理特殊的 MIME 类型和文档格式

python - mp3文件的时间长度

python - AttributeError : 'unicode' object has no attribute 'fromstring' . 如何解决这个问题?

python - python 中的链式内存器

angularjs - 在 Angular 中,$document.find ('body' ).eq(0) 与 $document[0].body

python - 生成 ODT/DOC(X) 并转换为 PDF,无需 OO.o/MS

python - 无法将 cython 生成的 C 语言代码转换为可执行文件