0

我在文件夹中有一些文件(sample.pdf、sample.html 等),我正在使用以下 Apache tika 命令来提取元数据。

java -jar tika-app.jar -m -j /sample/sample.pdf > test.txt

执行此命令后,我能够获取 sample.pdf 文件的所有元数据标签,但我的要求是获取特定标签,如作者、标题等。请建议我如何使用 Apache tika 获取特定的元数据标签。

谢谢

4

1 回答 1

0

您可以提取元数据名称如下(我的示例是用于解析 XML 文件,您可以简单地将其更改为 PDF 解析器或使用自动检测解析器:

//detecting the file type
BodyContentHandler handler = new BodyContentHandler(-1);
Metadata metadata = new Metadata();
File inFile = new File("example.xml");
FileInputStream inputstream = new FileInputStream(inFile);
ParseContext pcontext = new ParseContext();

//Xml parser
XMLParser xmlparser = new XMLParser(); 
xmlparser.parse(inputstream, handler, metadata, pcontext);

System.out.println("Metadata of the document:");
String[] metadataNames = metadata.names();//Now we have all the metadata tags here

for(String name : metadataNames) {
    if (name == "Your Particular Tag"){ //here you can check if the tag names are the particular ones you need and do what you want with them
        System.out.println(name + ": " + metadata.get(name));
    }
}
于 2017-04-02T17:49:16.817 回答