使用解包方法的 tika python 模块的警告消息

Warning message from tika python module using the unpack method

我目前正在使用 tika 从 pdf 文件中提取文本。我在 tika 模块中找到了一个非常快速的方法。这个方法叫做unpack。 这是我的代码:

from tika import unpack

text = unpack.from_file('example.pdf')['content']

然而,偶尔(不总是!)我会收到此警告:

2018-11-02 15:30:25,533 [MainThread ] [WARNI] Failed to see startup log message; retrying...

重试后代码开始工作。但是,我不明白这个警告,而且重试也需要时间。 任何人都知道为什么我会收到此警告?

这是 github 页面: https://github.com/chrismattmann/tika-python

Tika python 是 Apache Tika 的 python 绑定。它绑定 Apache Tika 的方式是使用 Tika 公开的其余服务通过 http 连接。如果您 运行 Tika 作为客户端模式,那么它只是与提供的 url 接口。否则它会在本地启动一个 Apache Tika 服务器来与之交互。

现在我假设您没有 运行将 Tika 设置为仅客户端模式。所以基本上库将旋转一个 Tika Apache 服务器。它验证它是否已成功生成 Tika 服务器的方法是检查 Tika 日志文件中是否存在消息“"Started Apache Tika server at"。此验证是递归完成的,但有时间延迟。请参阅源代码here

基本上是您看到的消息,因为在第一次验证时,Apache Tika 服务器仍未启动。

我认为警告消息在这里不会有任何影响,因为验证是在启动服务器的命令之后立即发生的。我不确定图书馆应该如何处理这个问题。可能是你可能会争辩说它应该作为信息记录下来。此外,增加时间延迟在这里也无济于事,因为验证是在启动命令后立即完成的。

另一方面,我不确定验证是否处理了较旧的消息,因为如果您两次调用解包,库是否确保来自先前 运行 的日志文件不存在?