Parsing 无法使用Tika1.3(&x2B;lucene4.2)解析pdf
我正在尝试解析一个pdf文件并获取其元数据和文本。我仍然没有得到想要的结果。我确信这是一个愚蠢的错误,但我看不到。文件d.pdf存在,并且位于项目的根文件夹中。导入也正确Parsing 无法使用Tika1.3(&x2B;lucene4.2)解析pdf,parsing,lucene,apache-tika,pdf-parsing,Parsing,Lucene,Apache Tika,Pdf Parsing,我正在尝试解析一个pdf文件并获取其元数据和文本。我仍然没有得到想要的结果。我确信这是一个愚蠢的错误,但我看不到。文件d.pdf存在,并且位于项目的根文件夹中。导入也正确 public class MultiParse { public static void main(final String[] args) throws IOException, SAXException, TikaException { Parser
public class MultiParse {
public static void main(final String[] args) throws IOException,
SAXException, TikaException {
Parser parser = new AutoDetectParser();
File f = new File("d.pdf");
System.out.println("------------ Parsing a PDF:");
extractFromFile(parser, f);
}
private static void extractFromFile(final Parser parser,
final File f ) throws IOException, SAXException,
TikaException {
BodyContentHandler handler = new BodyContentHandler(10000000);
Metadata metadata = new Metadata();
InputStream is = TikaInputStream.get(f);
parser.parse(is, handler, metadata, new ParseContext());
for (String name : metadata.names()) {
System.out.println(name + ":\t" + metadata.get(name));
}
}
}
输出:没有错误,但是..也没有太多错误:(
你的文件在哪里?你确定这两种方法都找到了真正的文件吗?似乎找不到文件,我也不知道为什么。我尝试了“d.pdf”、“d.pdf”、“绝对路径”、“相对路径”,最后但并非最不重要的是,我将d.pdf复制到了项目的每个文件夹中(绝望行为)…什么都没有。它应该在项目类路径的外部还是内部?thnx我进行了阅读。程序找到了该文件(即我使用file.exists()和file.isFile()进行了测试)。输出不令人鼓舞。它只找到其内容类型。。您是否尝试对其运行
tika cli
工具?这将显示可用的元数据。此外,您的类路径上是否有所有tika JAR?仅内容类型就让我认为您缺少与PDF相关的类
------------ Parsing a PDF:
Content-Type: application/pdf