个性化阅读
专注于IT技术分析

Tika提取PDF文件用法示例

本文概述

为了从pdf文件中提取内容, Tika使用PDFParser。 PDFParser是用于从pdf文件提取内容和元数据的类。此类位于org.apache.tika.parser.pdf包中。

它包含下表中列出的构造函数和方法。

PDFParser构造函数权限

Constructor Description
public PDFParser() 它用于创建此类的实例。

下载PDFParser方法

Method Description
公共Set <MediaType> getSupportedTypes(ParseContext上下文) 当与给定的解析上下文一起使用时, 它返回此解析器支持的媒体类型集。
公共无效解析(InputStream流, ContentHandler处理程序, 元数据元数据, ParseContext上下文)引发IOException, SAXException, TikaException 它将文档流解析为一系列XHTML SAX事件。
公共PDFParserConfig getPDFParserConfig() 它用于获取pdfparser配置。
公共无效setPDFParserConfig(PDFParserConfig配置) 用于设置pdfparser的配置
公共无效setEnableAutoSpace(布尔v) 解析器应估计单词之间应在何处插入空格。
公共布尔getExtractAnnotationText() 它提取注释中的文本。
公共无效setExtractAnnotationText(boolean v) 如果为true(默认值), 则将提取注释中的文本。
公共无效setSuppressDuplicateOverlappingText(boolean v) 如果为true, 则解析器应尝试删除同一区域上的重复文本。

Tika提取PDF文件示例

在下面的示例中, 我们从pdf文件中提取内容和元数据。

package tikaexample;
import java.io.IOException;
import java.io.InputStream;
import org.apache.tika.exception.TikaException;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.parser.ParseContext;
import org.apache.tika.parser.pdf.PDFParser;
import org.apache.tika.sax.BodyContentHandler;
import org.xml.sax.SAXException;
public class PdfParserExample {
	public static void main(String[] args) throws IOException, SAXException, TikaException {
		 BodyContentHandler handler   = new BodyContentHandler();
		 PDFParser parser             = new PDFParser();
		 Metadata metadata            = new Metadata();
		 ParseContext pcontext        = new ParseContext();
		 try (InputStream stream = AutoDetectParseExample.class.getResourceAsStream("srcmini.pdf")) {
		        parser.parse(stream, handler, metadata, pcontext);
	     System.out.println("Document Content:" + handler.toString());
	     System.out.println("Document Metadata:");
	     String[] metadatas = metadata.names(); 
	     for(String data : metadatas) {
	         System.out.println(data + ":   " + metadata.get(data));  
	     }
		 }catch(Exception e) {System.out.println("Exception message: "+ e.getMessage());}
	   }
	}

输出

Document Content:
Welcome to the srcmini. 
 
srcmini is a Technical portal that contains latest computer science topics. 



Document Metadata:
pdf:PDFVersion:   1.4
xmp:CreatorTool:   Online2PDF.com
access_permission:modify_annotations:   true
access_permission:can_print_degraded:   true
meta:creation-date:   2018-05-05T11:25:40Z
created:   Sat May 05 16:55:40 IST 2018
access_permission:extract_for_accessibility:   true
access_permission:assemble_document:   true
xmpTPg:NPages:   1
Creation-Date:   2018-05-05T11:25:40Z
dcterms:created:   2018-05-05T11:25:40Z
dc:format:   application/pdf; version=1.4
access_permission:extract_content:   true
access_permission:can_print:   true
pdf:docinfo:creator_tool:   Online2PDF.com
access_permission:fill_in_form:   true
pdf:encrypted:   false
producer:   Online2PDF.com
access_permission:can_modify:   true
pdf:docinfo:producer:   Online2PDF.com
pdf:docinfo:created:   2018-05-05T11:25:40Z
Content-Type:   application/pdf
赞(0) 打赏
未经允许不得转载:srcmini » Tika提取PDF文件用法示例
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏