apache-tika - Tika Server - 没有书签和图像标签的解析
问题描述
我正在用tika server v1.20
.
Tika 在正文中添加了 [bookmark: xx] 和 [image: xx]。我不想要他们。
样本输出:
天才大脑如何学习 David A. Sousa [图片:天才大脑如何学习] 欢迎来到我们的第三届年度 GATE 家庭图书研究。
复制:
运行服务器 -
java -jar tika-server-1.20.jar -p 5000
放http://localhost:5000/tika
将文件附加为二进制文件和content-type
:application/vnd.openxmlformats-officedocument.wordprocessingml.document
\[(image:|bookmark:).*?\]
由于以下情况,使用正则表达式删除此标签是有问题的:
[image: **[1].jpg]
如何使用 tika 服务器而不产生这个标签?如果不可能,如何删除它们?
解决方案
虽然您可以通过为EmbeddedDocumentUtil添加自定义DocumentSelector以在 ParseContext 中使用来在 Tika 中覆盖它,但目前 tika-config.xml 中没有类似的东西,也没有它的命令行参数。
顺便说一句,在 Tika 1.25 中出现了递归元数据端点的标头设置,可让您指定最大嵌入式递归(参见示例)。但是,由于您想要内容,这对您的情况没有帮助:
curl -T test_recursive_embedded.docx --header "maxEmbeddedResources: 0" http://localhost:9998/rmeta
根据您要处理的内容的哪一部分,有一个端点可能就是您要查找的内容。这是/tika/main端点。
curl -T website\ book\ study\ how\ the\ brain\ works\ building\ background1.docx http://localhost:9998/tika/main --header "Accept: text/plain"
这旨在复制 Tika 应用程序的--text-main函数并使用专注于文件中主要内容的样板内容处理程序。因此,这不会处理嵌入的图像。
推荐阅读
- ionic-framework - 离子 3:失败:构建失败并出现异常
- c# - 如何在 C# Unity 中优雅地停止 UDP 接收线程
- c - 当我尝试编译我的 C 代码时,为什么会出现这些错误?
- css - 通过 CSS 对齐按钮的图像位置
- reactjs - 使用 AWS amplify 通过网站登录 chrome 扩展程序
- r - 根据设定值重新排序一列数字,R
- python - 读取 csv 文件并希望跳过前两列
- roles - 生成将权限授予帐户中所有适当角色的 Snowflake 脚本
- .net - Visual Studio 扩展:如何获取 $ 宏的值?
- python-3.x - 如何对两个离散的归一化概率分布函数应用 KS 检验?