我在文件夹中有一些文件(sample.pdf,sample.html等),我正在使用以下Apache tika命令来提取元数据。
java -jar tika-app.jar -m -j /sample/sample.pdf > test.txt
执行此命令后,我可以获取sample.pdf文件的所有元数据标签,但我的要求是获取特定标签,如作者,标题等。请建议我如何使用Apache tika获取特定的元数据标签。
由于
答案 0 :(得分: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));
}
}