根据elasticsearch-mappper-attachment plugin的示例,我正在使用Tika门面。这是我的测试代码:

Tika tika = new Tika();
Metadata md = new Metadata();

try {
    String content = tika.parseToString(src, md, 100000);

    System.out.println("Content length: " + content.length());

    for (String s: md.names()) {
        System.out.println(s + ": " + md.get(s));
    }
}
catch (TikaException e) {
    System.out.println(e);
}


这是输出:

Content length: 0
X-Parsed-By: org.apache.tika.parser.EmptyParser
Content-Type: text/html


所以问题是:如果Tika正确地将输入标识为text/html,为什么要使用EmptyParser?如果我应该通过一个解析器,那么如上所述,假定自动检测成功,我应该通过哪个解析器以获得最佳结果。

谢谢。

最佳答案

确保tika-parsers在您的类路径中!如果您使用Gradle,

compile 'org.apache.tika:tika-parsers:1.7'


会成功的

09-10 08:28
查看更多