首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Apache Tika无法从大型pdf中提取全文内容。

Apache Tika无法从大型pdf中提取全文内容。
EN

Stack Overflow用户
提问于 2016-11-14 06:06:04
回答 1查看 1.3K关注 0票数 0

我试图从一个大型pdf (未扫描/光栅化pdf)文件中使用apache提取文本。

但在提取文本时,我比较原始(从pdf)和提取的文本,我发现,大量的文本内容是缺失的。我已经尝试使用setMaxStringLength(-1)BodyContentHandler(-1)来最大化输出。但仍然无法从pdf文件中提取全文内容。

下面是我试过的两个样品。

样本:1

代码语言:javascript
运行
复制
public class Extract 
{
    public static void main( String[] args ) throws IOException, SAXException, TikaException
    {
        File file = new File("1.pdf");

        //Instantiating Tika facade class
        Tika tika = new Tika();
        tika.setMaxStringLength(-1);
        String filecontent = tika.parseToString(file);
        System.out.println("Extracted Content: " + filecontent);
    }
}

样本:2

代码语言:javascript
运行
复制
public class Extract 
{
    public static void main( String[] args ) throws IOException, SAXException, TikaException
    {
        BodyContentHandler handler = new BodyContentHandler(-1); //-1 to allow parsing for unlimited character
        Metadata metadata = new Metadata();
        FileInputStream inputstream = new FileInputStream(new File("1.pdf"));
        ParseContext pcontext = new ParseContext();

        //parsing the document using PDF parser
        PDFParser pdfparser = new PDFParser(); 
        pdfparser.parse(inputstream, handler, metadata,pcontext);

        //getting the content of the document
        System.out.println("Contents of the PDF :" + handler.toString());

        //getting metadata of the document
        System.out.println("Metadata of the PDF:");
        String[] metadataNames = metadata.names();

        for(String name : metadataNames) {
            System.out.println(name+ " : " + metadata.get(name));
        }
    }
}

我能看到的内容,从最后一页的pdf。但在pdf中随机丢失了很多文本。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-03 14:42:57

这对我来说是最愚蠢的错误。我从eclipse控制台获取输出文件,该控制台的缓冲区空间有限。当我将输出写入文件时,它似乎是完美的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40582763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档