Apache tica详述

Tika是一个内容抽取的工具集合(a toolkit for text extracting)。它集成了POIPdfbox 并且为文本抽取工作提供了一个统一的界面。其次,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。

提示:主要tika-xx.jar,解析相应的文件必须有相应的jar.例如:excel文件必须用到poi-xx.jar

相关包下载地址http://download.csdn.net/download/an74520/7658941

[java] view plaincopyprint?

package com.miracle.tools;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.parser.AutoDetectParser;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.parser.Parser;
import org.apache.tika.sax.BodyContentHandler;
import org.xml.sax.ContentHandler;
import java.io.*;  

/**
 * Created with IntelliJ IDEA.
 * User: lianan
 * Date: 14-3-3
 * Time: 上午10:05
 * To change this template use File | Settings | File Templates.
 */
public class TiKaUtil {  

    public static String parseFile(File file){
        Parser parser = new AutoDetectParser();
        InputStream input = null;
        try{
            Metadata metadata = new Metadata();
            metadata.set(Metadata.CONTENT_ENCODING, "utf-8");
            metadata.set(Metadata.RESOURCE_NAME_KEY, file.getName());
            input = new FileInputStream(file);
            ContentHandler handler = new BodyContentHandler();//当文件大于100000时,new BodyContentHandler(1024*1024*10);
            ParseContext context = new ParseContext();
            context.set(Parser.class,parser);
            parser.parse(input,handler, metadata,context);
            for(String name:metadata.names()) {
                System.out.println(name+":"+metadata.get(name));
            }
            System.out.println(handler.toString());
            return handler.toString();
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            try {
                if(input!=null)input.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return null;  

    }  

    public static void main(String argt0[])throws Exception{
        parseFile(new File("E:\\学习手册pdf\\HOST.txt"));
    }
}  
时间: 2024-08-08 09:41:20

Apache tica详述的相关文章

详述CentOS 7中Apache配置与应用(一)

Apache连接保持 Apache连接保持相关参数 KeepAlive 是否打开连接保持,OFF关闭,ON打开 KeepAlive' Timeout 一次连接多次请求之间的最大间隔时间,两次请求超过该时间连接断开 MaxKeepAliveRequests 一次连接能够 传输的最大请求数量 Apache访问控制 作用 控制对网站资源的访问 为特定的网站目录添加访问授权 常用访问控制方式 客户机地址限制 用户授权限制 基于客户端地址的访问控制 使用Require配置项实现访问控制,按先后顺序限制 可

详述Linux系统中Apache网页与安全优化(二)

网页缓存 配置网页的缓存时间 通过mod_ expire模块配置Apache,使网页能在客户端浏览器缓存一段时间,以避免重复请求 启用mod_ expire模块后,会自动生成页面头部信息中的Expires标签和Cache-Control标签,从而降低客户端的访问频率和次数,达到减少不必要的流量和增加访问速度的目的 启用网页缓存功能步骤 查看是否安装mod_ expire模块 修改配置文件启用缓存功能 抓包测试 查看是否安装了mod_ expire模块 /usr/local/apache/bin/

详述Linux系统中Apache网页与安全优化(一)

Apache网页优化 Apache网页优化概述 在企业中,部署Apache后只采用默认的配置参数,会引发网站很多问题,换言之默认配置是针对以前较低的服务器配置的,以前的配置已经不适用当今互联网时代 为了适应企业需求,就需要考虑如何提升Apache的性能与稳定性,这就是Apache优化的内容 优化内容 配置网页压缩功能 工作模式的选择与参数优化 配置防盗链 配置隐藏版本号 ....... 网页压缩 gzip介绍 配置Apache的网页压缩功能,是使用gzip压缩算法来对网页内容进行压缩后再传输到客

详述Linux系统中Apache网页深入优化

ab压力测试 Apache自带压力测试工具ab,简单易用,且可以模拟各种条件对Web服务器发起测试请求 ab工具可以直接在Web服务器本地发起测试请求,这对于需要了解服务器的处理性能至关重要,因为它不包括数据的网络传输时间以及用户PC本地的计算时间,从而可以通过观测各种时间指标判断Web服务器的性能,以便进行参数的优化调整 ab压力测试工具 在进行性能调整优化过程中,可用ab压力测试工具进行优化效果的测试 优化前先使用ab进行压力测试 优化后,重启服务,再使用ab进行压力测试 对比两次测试的结果

Apache中.htaccess文件的作用和配置

00x01 What's .htaccess      htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置.通过htaccess文件,可以帮我们实现:网页301重定向.自定义404错误页面.改变文件扩展名.允许/阻止特定的用户或者目录的访问.禁止目录列表.配置默认文档等功能. 一般来说,htaccess文件需要放在网站的根目录下才能控制整个站点,并且在Linux系统中,需要把其权限设置为644以提高安全性.国内很多主机提供商都通过一定技术手段禁用了该文件,但是国

Apache伪静态(Rewrite).htaccess文件详解

Htaccess(超文本访问)是一个简单的配置文件,它允许设计师,开发者和程序员通过它来改变Apache Web服务器的配置.这些功能包括用户重定向.URL重写(url rewrite,国内很多称为伪静态).目录密码保护.现在我们开始-- 1 建立并上传一个.htaccess文件建立一个.htaccess文件很简单,我们使用一个类似windows的记事本或者notpad++都可以,然后把"自动换行"功能关闭,然后写入一些字后保存文件.比如,我们可以起名为:htaccess.txt上传到

tomcat和apache的结合   看最重要的   文档有点乱

#./configure --prefix=/usr/local/apache2 \ --enable-modules=most \ --enable-mods-shared=all \   可以去掉all   表示全用静态   不去掉  表示所有模块为动态. --enable-so \用此编译启动Apache httpd服务时,报错:Invalid command 'Order', perhaps misspelled or defined by a module not included i

Tomcat探秘(4):tomcat启动过程详述

熟悉Tomcat的工程师们,或者从事Java开发的,肯定都知道Tomcat是如何启动和停止的.在Tomcat源码包里面有个bin目录,该目录下放置了一些很重要的脚本,Tomcat启动和停止的脚本程序就放在这里,分别是startup.bat.shutdown.bat(Windows环境)和start.sh.shutdown.sh(Linux.Unix环境).大家一定都知道如何使用它们,接下来就是研究一下它们是如何实现启动和停止服务的. 在实际的生产环境下,绝大多数的Tomcat都是部署在Linux

Azure上Linux VM防DDOS攻击:使用Apache mod_evasive

部署在云端的虚拟机和web服务,很容易受到DoS护着DDoS的服务攻击,让一些新上线的业务苦不堪言,当然各个云服务提供商也有不同层面DDOS的防护,然而由于防护粒度,攻击复杂度的关系,未必可以满足你的需求,本文介绍如何对使用了Apache httpd的用户做一些简单的配置,从而有效防护一些简单的DDOS攻击. mod_evasive模块是httpd对web服务器的一个DoS和DDoS防护模块,针对单个IP地址客户端对单个页面,访问总量等参数,对疑似DDOS的IP地址进行屏蔽,配置简单而且简单有效