Java 文档解析工具:Apache Tika 开源的文档内容解析工具

Java 文档解析工具:Apache Tika 开源的文档内容解析工具

经验文章nimo972025-03-25 13:19:0514A+A-

一、介绍

简单介绍下:Apache TikaTM (Apache Tika  Apache Tika)工具包从一千多种不同的文件类型(如 PPT、XLS 和 PDF)中检测和提取元数据和文本。所有这些文件类型都可以通过一个界面进行解析,这使得 Tika 可用于搜索引擎索引、内容分析、翻译等。


二、使用方式

  1. Java jar 包直接运行的方式;
  2. 安装包直接安装到本地windows 系统的方式;
  3. 环境搭建:
    1. JDK 1.8+
    2. SpringBoot 3.x+

(1)在 Java 程序中使用

【1】引入 Maven 依赖



    org.apache.tika
    tika-core
    2.9.0


    org.apache.tika
    tika-parsers-standard-package
    2.9.0

【2】定义 tika 运行属性

此配置文件存放于 SpringBoot 项目的 resources 目录下即可,如果位置发生变化需要在获取资源的时候改变位置保持同步一致即可。



    
        
            
                64000
            
        
        
            
                64001
            
        
        
            
                64002
            
        
    

【3】编写配置文件

import org.apache.tika.Tika;
import org.apache.tika.config.TikaConfig;
import org.apache.tika.detect.Detector;
import org.apache.tika.exception.TikaException;
import org.apache.tika.parser.AutoDetectParser;
import org.apache.tika.parser.Parser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader;
import org.xml.sax.SAXException;

import java.io.IOException;
import java.io.InputStream;

/**
 * tika 配置类
 *
 * @author drew
 * @date 2024/7/6 上午11:59
 */
@Configuration
public class MyTikaConfig {
    @Autowired
    private ResourceLoader resourceLoader;

    @Bean
    public Tika tika() throws TikaException, IOException, SAXException {

        Resource resource = resourceLoader.getResource("classpath:tika-config.xml");
        InputStream inputStream = resource.getInputStream();

        TikaConfig config = new TikaConfig(inputStream);
        Detector detector = config.getDetector();
        Parser autoDetectParser = new AutoDetectParser(config);

        return new Tika(detector, autoDetectParser);
    }
}

【4】运行测试

@SpringBootTest
class DemoApplicationTests {

    @Autowired
    private Tika tika;

    @Test
    void contextLoads() throws TikaException, IOException {
        Path path = Paths.get("C:", "\\Users\\drew\\Downloads\\测试岗位技能要求.pdf");
        File file = path.toFile();
        String content = tika.parseToString(file);
        System.out.println("解析后的文章内容如下:\n" + content);
    }

}

【5】测试结果


(2)直接使用

下载可运行的 Jar 包,直接启动得到一个 图形化界面,拖入一个PDF测试文件来试试,即可,演示步骤如下:

  1. 下载地址:Apache Tika – 下载(https://tika.apache.org/download.html)
  2. 简单运行JAR包指令:【jar -jar tika-app-3.0.0-BETA.jar】即可。

【1】运行 Jar 包

# 下载地址:https://www.apache.org/dyn/closer.lua/tika/3.0.0-BETA/tika-app-3.0.0-BETA.jar
$ java -jar tika-app-3.0.0.BETA.jar

【2】使用示例展示


选中 file - Open,

解析之后的结果,如下图所示:

解析完之后,读取了文件的各种信息

如果需要查看文件的读取内容,需要选择【View - FormattedText】即可查看,如下图所示:

至此,安装使用 Tika 的两种方式示例完毕。更多的使用技巧和方法,见文章底部【附录】地址查看哦 ~~~///(^v^)\\\~~~ 。

附录

  • Apache 官网 Tika 链接:Apache Tika  Apache Tika
  • Apache Tika 下载地址:Apache Tika – 下载【https://tika.apache.org/download.html】
点击这里复制本文地址 以上内容由nimo97整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

尼墨宝库 © All Rights Reserved.  蜀ICP备2024111239号-7