现在流行的搜索引擎 Lucene, Elasticsearch处理文件搜索时一般使用 tika,使用tika 处理文件正文搜索还好,但搜索结果显示正文等操作不是很方便,并且tika提取正文的速度比较慢。老版本还有很多外部依赖程序,安全性不好。
笔者给大家介绍一款调用方便,提取文件正文速度快,开发方便的组件供大家参考。
“Graccvs正文提取组件”全部用go语言实现,不依赖外部工具,效率高,安全性非常好。可以直接在操作系统上开发使用,不要求JAVA等其他环境支持,而且从设计上避免了环境依赖或者解析器框架带来的占用CPU过高和安全性问题。组件提取文本速度快,质量高,跨平台,支持多任务并发,开发简单成本低。提供多种语言接口及使用示例。
“Graccvs正文提取组件”支持很多文件格式:
A: pdf文件
B: office word文件 ".doc", ".odt", ".docx", ".dotm", ".docm"
C: wps文档 ".wps"
D: office excel文件 ".xls", ".xlsx", ".xlsm", ".xltm"
E: wps表格 ".et"
F: office powerPoint文件 ".ppt", ".pptx", ".potm", ".pptm", ".ppsm"
G: wps演示 ".dps"
H: 开放文档格式 ".ofd", 注:常见于“电子发票版式文件”
I: 富文本类型 ".rtf"
J: HTML页面文件 ".html", ".htm", ".mht", ".mhtml"
K: 邮件格式文件 ".eml", 注:默认提取前5个附件
L: 部分思维导图格式文件 ".emmx", "xmind", "gmind"
M: UTF8编码, Unicode编码, Ansi编码的文本文件,
".txt", ".c", ".h", ".cpp", ".m", ".asp", ".aspx", ".cs", ".pas",
".php", ".vb", ".bas", ".js", ".css", ".java", ".jsp", ".go",
".pl", ".perl", ".ps", ".py", ".python", ".sql", ".rs", ".dart"
注:可以在配置文件中增加纯文本文件后缀
N: 帮助文件 “*.chm",注:此格式仅限Windows平台
O: 压缩文件 ".zip", 注:默认提取前5个文件
以下是 使用Eclipse开发工具,Java调用动态链接库示例:
调用过程:
1:创建JAVA工程。
2:工程导入调用DLL的扩展包Native(jna-jpms-5.9.0.jar 和 jna-platform-jpms-5.9.0.jar)。
3:拷贝 graccvs64.dll到工程中,LibGraccvs.java单元修改DLL位置(默认在exe输出位置)。
4:实现提取文件正文函数,点击这里查看