1. Tika是什么
Tika是Lucene的一个子项目。
Tika是一个集合,用于处理各种格式化的文档,如doc(x), xls(x), ppt(x), jpg, pdf, etc. 它本身的core可以自动判别文件类型(AutoDetectParser类),也定义了统一的接口(the parse interface),外部接挂了各种处理不同格式文档的parser实现(implementation)。
2. Tika安装向导
使用了Maven2的编译生成的Tika,其源码可以在
http://lucene.apache.org/tika/下到。不过默认不提供生成的jar档案,需要自己用Maven2生成。因此如果读者没配置过Maven2,还需要首先去
http://maven.apache.org/download.html下载Maven2,笔者当前使用的是Maven2.2.1。
2.1 安装Maven2
在Windows下,解压获得的apache-maven-2.x.x-bin.zip至你想要安置Maven2的目录,比如笔者解压至了"D:\Library\",那么D:\Library\apache-maven-2.2.1是Maven2的根目录
去配置名为M2_HOME的环境变量为上述路径;如果是2.0.9版本则需注意路径最后一个字符不能是'\';继续配置名为M2的环境变量为"%M2_HOME%\bin";可选配置则是MAVEN_OPTS,可以把JVM的内存选项填上去:-Xms256m -Xmx512m。最后在Path系统环境变量中添加%M2%一项。
如果还没有装JDK,当然需要把JDK给装上,并且设置了JAVA_HOME环境变量和Path环境变量中包括的%JAVA_HOME%\bin。
经过上述步骤,在cmd中键入mvn --version看看是否正确输出。
UNIX-like系统可以参考下载页的installation instructions,过程都差不多。
2.2 生成Tika目标文件
把Tika解压到某特定目录,比如笔者的D:\Library则根目录是D:\Library\tika-0.5。cmd进入该目录,执行mvn clean install,经过耐心等待,就可以在tika-core目录下发现新增了一个target目录,该目录下有一个jar文件tika-core-0.5.jar,这就是我们要的了。不过我们并未同时发现tika-app和tika-parsers下的对应jar,不过没关系,依葫芦画瓢,进入该二目录,各自执行mvn install,就可以得到各自的jar档案,分别是tika-app-0.5.jar和tika-parsers-0.5.jar。
上述三个jar文件,tika-core-0.5.jar(
附件下载)是tika的核心和接口,不包括parser实现,后者包含在tika-parsers-0.5.jar(
附件下载)中,各类文档的解析类,实现了core中定义的接口。至于tika-app-0.5.jar,则是可执行的jar。下文将给出使用方法。
3. 初步使用
无疑,作为一个程序(命令行)来使用是最直接最简单的。进入app的jar所在的目录,运行java -jar tika-app-0.5.jar -?看看都有哪些用法吧,这里就不全部介绍了。比如笔者随意拿了一个xls文档,运行java -jar tika-app-0.5.jar -t test.xls,就可以看到xls里的文本内容了,还是以类似表格方式列印在控制台的,中文也没有问题。
4. 程序调用
主要的接口类就是
org.apache.tika.parser.Parser的
void parse(InputStream stream, ContentHandler handler, Metadata metadata)throws IOException, SAXException, TikaException;
parser接受一个流作为文档输入,一个org.xml.sax.ContentHandler作为内容格式输出。parser默认使用XHTMLContentHandler来产生XHTML输出。但通常需要指定一个ContentHandler来生成所需要的输出。Tika已经为我们实现了一些ContentHandler类,比如BodyContentHandler用来提取XHTML输出的body部分,以填入SAX事件供另外的ContentHandler处理,或者给出提取字符至输出流、writer或字符串。
ContentHandler handler = new BodyContentHandler(System.out);
parser.parse(System.in, handler, ...);
以上片段使用系统标准输入作为文档,把提取的文本内容发至标准输出。
另一个有用的方式是使用ParsingReader,解析文档,返回文本内容的字符流:
InputStream stream = ...; // the document to be parsed
Reader reader = new ParsingReader(parser, stream, ...);
try {
...; // read the document text using the reader
} finally {
reader.close(); // the document stream is closed automatically
}
值得注意的是,maven生成的tika的jar包是有依赖于几个其他的包的,包括dom4j, xbeans, apache-poi, PDFBox等。在建立工程的时候需要引入相关的jar。
最后附一个可运行的简单Demo:
public class TikaDemo {
public static String PATH = "E:\\0104-0110工作计划.docx";
public static String OUTPATH = PATH+".OUT";
/**
* @param args
* @throws TikaException
* @throws SAXException
* @throws IOException
*/
public static void main(String[] args) throws IOException, SAXException, TikaException {
Parser parser = new OOXMLParser();
InputStream iStream = new BufferedInputStream(new FileInputStream(new File(PATH)));
OutputStream oStream = new BufferedOutputStream(new FileOutputStream(new File(OUTPATH)));
ContentHandler iHandler = new BodyContentHandler(oStream);
parser.parse(iStream, iHandler, new Metadata(), new ParseContext());
}
}
分享到:
相关推荐
中国行政村区划代码及地理坐标-最新数据.zip
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
中国固定资产投资统计年鉴全集(1950-2021).zip
常用基础元件的PCB封装库SchLib/IntLib通用原理图库OV系列CMOS图像传感器提取方式是百度网盘分享地址
这是一个比较完成的RPG游戏,包含了: 交易模块, 任务模块,技能模块,BUFF 模块, 背包模块,地图模块,基本涵盖了一个普通RPG游戏的所有元素
yolo系列算法目标检测数据集,包含标签,可以直接训练模型和验证测试,数据集已经划分好,包含数据集配置文件data.yaml,适用yolov5,yolov8,yolov9,yolov7,yolov10,yolo11算法; 包含两种标签格:yolo格式(txt文件)和voc格式(xml文件),分别保存在两个文件夹中; yolo格式:<class> <x_center> <y_center> <width> <height>, 其中: <class> 是目标的类别索引(从0开始)。 <x_center> 和 <y_center> 是目标框中心点的x和y坐标,这些坐标是相对于图像宽度和高度的比例值,范围在0到1之间。 <width> 和 <height> 是目标框的宽度和高度,也是相对于图像宽度和高度的比例值
yolo系列算法目标检测数据集,包含标签,可以直接训练模型和验证测试,数据集已经划分好,包含数据集配置文件data.yaml,适用yolov5,yolov8,yolov9,yolov7,yolov10,yolo11算法; 包含两种标签格:yolo格式(txt文件)和voc格式(xml文件),分别保存在两个文件夹中; yolo格式:<class> <x_center> <y_center> <width> <height>, 其中: <class> 是目标的类别索引(从0开始)。 <x_center> 和 <y_center> 是目标框中心点的x和y坐标,这些坐标是相对于图像宽度和高度的比例值,范围在0到1之间。 <width> 和 <height> 是目标框的宽度和高度,也是相对于图像宽度和高度的比例值
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
java资源Google地图JSP标签库提取方式是百度网盘分享地址
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
城市运行管理的重要性与挑战 城市运行体系是以人为本的服务和经济发展体系,涉及决策、管理和执行三个层次。当前城市运行管理面临城市化快速发展、资源环境制约和社会矛盾突出等挑战。信息技术的发展为城市运行管理提供了重要手段,城市信息化经历了数字化、智能化到智慧化的发展过程。我国城市信息化虽取得进展,但仍处于初级阶段,存在缺乏整体规划、资源浪费和协作效率不高等问题。 智慧城市综合运行管理解决方案 智慧城市运行管理中心(SCOC)是支撑城市运行综合管理的神经中枢,旨在掌控城市运行综合体征,促进服务型政府转型。该中心通过全面整合运行资源,服务城市未来发展,提升城市运行水平和突发事件处置效率。中心纵向提升综合职能,横向贯通专业分工,包括综合管理平台、专业管理平台和业务操作平台,覆盖城市交通、公共安全、生态环境等多个领域。 智慧城市综合运行管理平台的结构与功能 智慧城市综合运行管理平台包括决策支持系统、处置系统、基础设施和监测系统。平台通过综合展现系统、综合应急指挥系统、综合运行业务联动系统等,实现城市运行的综合监测和管理。物联网数据采集系统利用网络通讯技术,实现城市物联网设备的高效运行。平台还包含云计算业务支撑系统、城市基础数据库、视频图像云平台等,以支持城市运行管理的各个方面。 智慧城市综合运行管理解决方案的优势 该解决方案具有三个核心优势:首先,它提供了完整的智慧城市视角,不仅仅是指挥中心或数据中心,而是智慧城市的实际载体。其次,它建立了完整的城市运行联动体系,打通业务部门壁垒,形成有机融合的业务联动平台,提升业务处理效率和服务水平。最后,方案凝聚了多年智慧城市建设咨询经验,为城市运行管理提供了成熟的解决方案。 项目实施建议 智慧城市运行管理中心的建设思路和项目实施建议是方案的重要组成部分,旨在指导城市如何有效实施智慧城市运行管理解决方案,以应对城市运行管理的挑战,提升城市管理的智能化和效率。通过这些建议,城市能够更好地规划和实施智慧城市项目,实现可持续发展。
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
中国省市绿色全要素生产率-最新数据.zip
功能说明: 系统功能实现了首页,房源信息,交流论坛,公告资讯,个人中心,后台管理等功能。系统的后台实现了个人中心,用户管理,房东管理,房源类型管理,房源信息管理,在线咨询管理,预约信息管理,订单信息管理,签订信息管理,申请退租管理,交流论坛,系统管理等功能的添加、删除和修改。 环境说明: 开发语言:Java 框架:ssm,mybatis JDK版本:JDK1.8 数据库:mysql 5.7及以上 数据库工具:Navicat11及以上 开发软件:eclipse/idea Maven包:Maven3.3及以上 服务器:tomcat7及以上
功能说明: 电气与信息类书籍网上书店的功能已基本实现,主要实现个人中心,用户管理,商家管理,图书类型管理,图书信息管理,借阅信息管理,购书信息管理,还书信息管理,系统管理等功能的操作系统。 环境说明: 开发语言:Java 框架:ssm,mybatis JDK版本:JDK1.8 数据库:mysql 5.7及以上 数据库工具:Navicat11及以上 开发软件:eclipse/idea Maven包:Maven3.3及以上 服务器:tomcat7及以上
环境说明: 开发语言:Java 框架:ssm,mybatis JDK版本:JDK1.8 数据库:mysql 5.7及以上 数据库工具:Navicat11及以上 开发软件:eclipse/idea Maven包:Maven3.3及以上 服务器:tomcat7及以上
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。
内含PCB设计案例,可直接打样出成果
java班级管理系统(java毕业设计源码)