当前位置: 首页 > 软件库 > 程序开发 > 搜索引擎 >

Apache Tika

内容抽取工具集合
授权协议 Apache
开发语言 Java
所属分类 程序开发、 搜索引擎
软件类型 开源软件
地区 不详
投 递 者 戈嘉慕
操作系统 跨平台
开源组织 Apache
适用人群 未知
 软件概览

Tika 是一个内容抽取的工具集合(a toolkit for text extracting)。它集成了 POI, Pdfbox 并且为文本抽取工作提供了一个统一的界面。其次,Tika 也提供了便利的扩展 API,用来丰富其对第三方文件格式的支持。

在当前的0.2-SNAPSHOT 版本中, Tika 提供了对如下文件格式的支持:

  • PDF - 通过 Pdfbox

  • MS-* - 通过 POI

  • HTML - 使用 nekohtml 将不规范的 html 整理成为 xhtml

  • OpenOffice 格式 - Tika 提供

  • Archive - zip, tar, gzip, bzip 等

  • RTF - Tika 提供

  • Java class - Class 解析由 ASM 完成

  • Image - 只支持图像的元数据抽取

  • XML

Tika 的 API 十分便捷,核心是 Parser interface,其中定义了一个 parse 方法:
public void parse(InputStream stream, ContentHandler handler, Metadata metadata)
用 stream 参数传递需要解析的文件流, 文本内容会被传入 handler,而元数据会更新至 metadata。

可以使用 Tika 的 ParserUtils 工具来根据文件的mime-type来得到一个适当的 Parser 来进行解析工作。或者 Tika 还提供了一个AutoDetectParser 根据不同的二进制文件的特殊格式 (比如说 Magic Code),来寻找适合的 Parser。

  • 一、背景 判断文件类型一般可采用两种方式 1、后缀名判断 简单易操作,但无法准确判断类型 2、文件头信息判断 通常可以判断文件类型,但有些文件类型无法判断(如word和excel头信息的前几个字节是一样的, 无法判断) 使用apache.tika可轻松解决以上两种方式存在的问题 二、Tika介绍 Apachhe Tika是基于java的内容检测和分析的工具包,可检测并提取来自上千种不同文件类型(如

  • 1、基本介绍 Apache Tika(文本分析工具包)能够检测并提取来自上千种不同文件类型(如PPT、XLS和PDF)的元数据和文本;所有这些文件类型都可以通过一个接口进行解析,这使得Tika在搜索引擎索引、内容分析、翻译等方面非常有用。 2、Tika使用 介绍下Tika在Maven项目中的使用,首先介绍下Tika相关的两个Maven依赖: <dependency> <groupId>o

  • Tika now has a module for Deep Learning powered by theDL4J toolkit. The initial included model is for InceptionV3and so using this module, natively in Java, Tika can useDeep learning for metadata/text

  • 目前博主已知的判断文件方法: 文件后缀名判断 java.nio.file.Files.probeContentType()(应该也是判断后缀名) 通过文件头判断(见之前的拙见博客) 使用 apache Tika组件判断 显然想要判断文件的真实类型,至少要从检测文件数据的想法起步,所以我们可以采用自己编写工具类读取文件数据并判断文件的真实类型。 然而文件类型数不胜数,自己去封装一个很好的工具类是一件

  • 使用Apache Tika实现内容分析 Apache Tika可以抽取不同类型的内容和元信息的开源工具,如word、excel、pdf,甚至多媒体文件如JPEG、MP4。所有基于文本的和多媒体文件都可以使用通用接口进行解析,这使得Tika成为功能强大且用途广泛的内容分析库。 本文将介绍Apache Tika,包括解析API、如何自动监测文档内容类型,同时提供示例说明。 引用类库 为了使用Apach

 相关资料
  • 我试图实现材料抽屉菜单使用 > Android支持v7.widget。工具栏 android.support.design.widget.NavigationView 问题既是NavigationView *注意:我曾尝试用LinearLayout替换RelativeLayout作为容器,但不起作用。 activity_布局。xml 碎片xml ActivityMain。Java语言 } 这里是结

  • 本文向大家介绍java实现随机抽取奖品工具类,包括了java实现随机抽取奖品工具类的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了java实现随机抽取奖品工具类的具体代码,供大家参考,具体内容如下 随机抽取奖品 整体思路: 1.奖品集合 + 概率比例集合 2.将奖品按集合中的顺序概率计算成所占比例区间,放入比例集合。并产生一个随机数加入其中,进行排序。 3.排序后随机数落在那个区间就

  • 介绍 这个工具主要增加了对数组、集合类的操作。 1. join 方法 将集合转换为字符串,这个方法还是挺常用,是StrUtil.split的反方法。这个方法的参数支持各种类型对象的集合,最后连接每个对象时候调用其toString()方法。栗子如下: String[] col= new String[]{"a","b","c","d","e"}; List<String> colList = Col

  • 本文向大家介绍Python 文本文件内容批量抽取实例,包括了Python 文本文件内容批量抽取实例的使用技巧和注意事项,需要的朋友参考一下 Python新手编写脚本处理数据,各种心酸各种语法查找,以此留念! 原始数据格式如下图所示: 这里是一个人脸测试数据,其中每行第一个为测试图片编号,后面为Top 7图片编号及其对应的评分,即与测试图片的相似度度量结果。我们这里的目的是将每行Top 7对应的评分

  • 我们在框架中实现了一些工具和服务,包括文件操作,字符串操作,网络工具,图片处理... 你可以在开发应用的时候很方便的使用这些服务开发功能。

  • 容联云通讯云通讯平台是一个提供通讯能力的云计算PaaS平台(cPaaS)。将传统电信网络的通讯能力、基于IP的通讯能力,通过开放API方式提供给开发者和商家,帮助合作伙伴的应用,便捷、低成本的集成VoIP、实时对讲、多人聊天室、IM、IVR等通讯能力。  这是一个给手机端和PC端的Native Apps开发者快速集成云通讯能力的一种便捷开发SDK工具集。

  • 还有一种调用模板的情况是我们只想渲染后返回模板渲染后的数据而不是直接输出,这时我们会用fetch方法; fetch的用法和display 完全一样,只是不直接输出了; //不带任何参数 $content=$this->fetch(); 此种方式系统会自动判断模板路径,并渲染出模板内容,此种方式模板路径是:主题名/应用名/控制器名/操作名+模板文件后缀名; $content=$this->fetc

  • 问题内容: 当您将鼠标悬停在网页的特定区域时,有很多基于JavaScript的库会显示工具提示。有些相当简单,有些允许工具提示显示使用CSS样式的HTML内容。 但是有没有一种方法可以显示样式化的工具提示而不使用JavaScript?如果仅使用该属性,则不会处理标签(例如,不会产生换行符)。我正在寻找一种解决方案,该解决方案无需使用任何JavaScript即可显示样式化的HTML内容。 问题答案: