【问题标题】:Tika doesnt output document contentsTika 不输出文档内容
【发布时间】:2016-04-27 01:39:41
【问题描述】:

我正在尝试按照他们网站上的教程使用 Tika 仅从 pdf 文件中提取文本,但我只是得到了 25k 行的文本,看起来像这样。

%PDF-1.5 %µµµµ 1 0 对象 >> 结束对象 2 0 对象 结束对象 3 0 对象 /ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/MediaBox[0 0 612 792] /Contents 4 0 R/Group/Tabs/S/StructParents 0>> 结束对象 4 0 对象 溪流 xœ•Wßoâ8?~Gâ�Çät?Û±óCª"QÚ®î´+?t¼öÁ‚@£Mi?ÙëíóÙ??mºœ^=žùfæóÌ„Òô/º¹™~™ÿqGrúÙm7?UÛɧ۸,éönN ·‹ñhúH)! -Öã‘"ÉŠt¡D–Q&?'æ´x??$mðõiõµ°¹?Ù{ ½AL®EL?‘˜k?ͯ?3-¤6”Z+ŠãýL’HÄiXÐßq?½Ä&ªø¹Œ'6ª!^ÇJ‡•—¡hÚXÉ zæÝvà–•É„ê;ü0?;\àú??ïò1š+#àßH©?¤ÊÒÒòR&R?³r’ÜHeg¥Ü±H†#©ýÚ ·?V0†ffË”?ê??àÀ¨ÌY4Ï?dvWNpka€Ó ?§ ¥?þ?±R?b/ùîYi?±Z/.Ur?ß™YÂH>eD?îX÷”Bboùã½K™?ø=Y#c¾??u8>¡#Dï?¢ìÈ :û8øš?–?ç™dç‰??±d%ó–Ð?=e¿¦§?É;%h“Bäi¯??çcW®º@S?ÝGn4÷?ú¨Þr#m¸÷ ¨Åö5ιµ¸Ûè¥q±2ÑOH«Ýž0®?:rO¯Ü¸UÓ?šÑíƒ!?+г`ý»¶Ž• Û-oiýÌ^väh_o7ŒÐT8÷~'Î

在尝试使用 .docx 格式时,我也得到了同样的结果,但使用 .txt 时效果很好。有谁知道我做错了什么?

BodyContentHandler handler = new BodyContentHandler(-1);

      Metadata metadata = new Metadata();
      FileInputStream inputstream = new FileInputStream(new File("fake.pdf"));
      ParseContext pcontext=new ParseContext();

      //Text document parser
      TXTParser  TexTParser = new TXTParser();

      TexTParser.parse(inputstream, handler, metadata,pcontext);
      System.out.println("Contents of the document:" + handler.toString());

【问题讨论】:

    标签: java apache-tika


    【解决方案1】:

    问题似乎是您正在尝试使用TXTParser 来解析PDF 文档。 PDF 代表Portable Document Format,在文件中包含二进制数据。

    幸运的是Apache Tika 带有一个包装器,它会自动检测您尝试解析的文件的格式。

    Tika Documentation 试试这个例子:

    public String parseExample() throws IOException, SAXException, TikaException {
        AutoDetectParser parser = new AutoDetectParser();
        BodyContentHandler handler = new BodyContentHandler();
        Metadata metadata = new Metadata();
        try (InputStream stream = ParsingExample.class.getResourceAsStream("test.pdf")) {
            parser.parse(stream, handler, metadata);
            return handler.toString();
        }
    }
    

    【讨论】:

      【解决方案2】:

      刚刚意识到我使用的是 TXTParser 而不是 AutoDetectParser。有人可以关闭或删除这个问题吗?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-02
        • 2012-09-30
        • 2017-04-25
        相关资源
        最近更新 更多