【问题标题】:Parsing Large PDF file using Apache Tika使用 Apache Tika 解析大型 PDF 文件
【发布时间】:2016-11-30 13:51:34
【问题描述】:

我在使用 Apache Tika 解析大型 PDF 文件时遇到了一些问题。 文件大小接近 5 MB。

代码如下:

package com.ibm.lnk.processor;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;

import com.ibm.lnk.utility.LNKProcessorUtility;

public class TestClient {
public static void main(String[] args) throws IOException {
    InputStream inputStream=null;
    try {
         inputStream=new FileInputStream(new File("C:\\CognitiveAssignment\\ProjectSpecificMaterials\\C3Portal\\TestData\\T1\\Anupam Sarkar_IBM_CV.pdf"));
        String content=LNKProcessorUtility.getTextContent(inputStream);
        System.out.println(content);
    } catch (Exception e) {
        System.out.println(e);
    }finally {
        inputStream.close();
    }
}
}

我得到的例外是:

org.apache.tika.exception.TikaException:无法提取所有 PDF 内容

谁能帮我解决这个问题?

【问题讨论】:

  • 完整的异常是什么,包括堆栈跟踪?
  • 您使用的是哪个 TIKA 版本?
  • 可能是这样的:issues.apache.org/jira/browse/TIKA-2098。顺便说一句,您应该编辑您的问题以包含堆栈跟踪。这将显示它是否是同一个问题。

标签: java apache apache-tika


【解决方案1】:

尝试使用 apache pdfbox 从 pdf 中读取文本

示例代码-

    import java.io.File;
    import java.io.IOException;
    import org.apache.pdfbox.pdmodel.PDDocument;
    import org.apache.pdfbox.text.PDFTextStripper;

    public class PDFTextReader {

    public static void main(String[] args) throws Exception {       
       File file = new File("<any pdf>");
       PDDocument inputDoc= PDDocument.load(file);   
       PDFTextStripper stripper = new PDFTextStripper();        
       System.out.println("Text: " + stripper.getText(inputDoc));  
       }
    }

【讨论】:

    猜你喜欢
    • 2011-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-21
    • 1970-01-01
    • 2015-07-16
    • 1970-01-01
    • 2013-03-22
    相关资源
    最近更新 更多