PDF信息提取技术的汇总(干活满满!)

PDF信息提取技术的汇总(干活满满!)

一、PDF文件的基本情况

便携式文档格式(英语:Portable Document Format,缩写:PDF)是一种用独立于应用程序、硬件、操作系统的方式呈现文档的文件格式。每个PDF文件包含固定布局的平面文档的完整描述。具体地,PDF文件除平面的文本和图形外,还可能包括逻辑结构元素,注释、表单、图层、富媒体(包括视频内容)之类的交互元素,使用U3D或PRC的三维对象,以及多种其他数据内容。同时,PDF规范还提供了启用这些功能时所需的加密功能、数字签名、文档附件和元数据等。

二、PDF文件发展历史过程

PDF文件格式于1990年代早起开始启动研发,主要用于分享以文本为主要载体的,能够支持附带内置影像的文档格式,并希望跨平台,保证无缝衔接,收件者亦无需适配相关或合用的应用软件接口。

1991年,Adobe Systems共同创始人约翰·沃诺克提出的名为“Camelot”的系统最终成为PDF文件格式的初代版本。在万维网及HTML文本尚未兴起的当时,PDF在桌面出版工作流技术当中很受欢迎。

1993年,PDF文件格式规范第一版发布,之后陆续发布了五个大版本,多个小修订版。

2007年1月29日,Adobe宣布将发布完整的PDF 1.7规格给美国国家标准协会(ANSI)及企业内容管理协会,为了由国际标准化组织(ISO)发布。

2008年,根据当时1.7版本的规范格式,国际标准化组织为PDF制定了正式的国际标准。因此,PDF的更新版本开发变成由ISO主导, Adobe及其他相关项目的专家作为参与方进行协同。

2009年9月1日,作为电子文档长期保存格式的PDF/Archive(PDF/A)经中国国家标准化管理委员会批准已成为正式的中华人民共和国国家标准(GB),标准号为GB/T 23286.1-2009。

三、PDF文件数据提取的技术方案与分析

目前,从PDF提取信息一般有以下几个方式。

第一种方式就是手动复制粘贴的形式。这种简单的方法通常会导致数据提取不稳定且容易出错。人工将不得不花费大量时间和精力以一致且有意义的方式重新组织和呈现提取的信息。

第二种方式就是采用外包人工录入的形式进行。这些数据录入专业人员基本上会执行前一种方法中概述的步骤,但要按规模进行。虽然这种方法可以降低数据提取成本和延迟,但质量控制和数据安全是严重的问题。

第三种方式就是采用PDF 转换器是关注数据质量和数据安全的人的不二之选。PDF 转换器允许在内部管理数据提取,同时快速高效。此类 PDF 转换器可作为软件、基于网络的在线解决方案甚至移动应用程序使用。PDF 最常转换为 Excel(XLS 或 XLSX)或 CSV 格式,因为它们以简洁的方式呈现表格;PDF 到 XML 转换器也很常用。只需打开或上传 PDF 文档并将其转换为方便的格式。但一般来说,PDF 转换器不具备大规模处理文档的能力, 批量数据提取是不可能的 ,必须为每个文档重复数据提取过程,一次一个!

第四种方式就是编写自动化脚本,通过调用其他工具包,在提取底层配置技术人员进行编码。

针对第三种和第四种方式,通过对当前互联网的技术调研,综合后的提取技术路径有两种类别, 直接提取 间接提取 两种。直接提取可通过采用官方给出的SDK工具包或者第三方工具包,采用脚本或者调用服务的形式,直接返回结构化的数据格式。间接提取是指将PDF文件转化为其他文件格式后再进行要素提取。

具体,请看前面两个方面介绍。

1、 直接提取

直接提取是根据pdf的文档结构,直接进行结构性分析,生成有关的结构化数据结果。

l Adobe PDF Extract API

(1)简介

Adobe公司推出的,通过使用由 Adob​​e Sensei 机器学习提供支持的网络服务,具备解锁任何PDF的结构和内容元素。

(2)主要功能特点

全面的内容提取 。提取结构化JSON文件中的所有PDF文档元素,包括文本、表格和图像等。

文档结构理解。 能够对文本对象进行分类,例如标题、列表、脚注和可能跨越多个列或页面的段落。捕获所有对象的文本字体和样式、定位以及自然阅读顺序。

高度准确的结果。 有Adobe Sensei AI技术可跨多种文档类型(包括原生 PDF 和扫描的 PDF)提供高度准确的数据提取,而无需自定义 ML 模板或模型训练。

云端平台无缝集成 。Adobe的PDF Extract API是按照RESTful规则暴露的接口,具备良好的规范性。可以通过多语言,例如Java、Go、Python等编程语言进行调用使用或者在线的方式使用。

(3)结果形式

结果以json文件或png图片或csv文件呈现。

(4)注意事项

个人用户可以免费获得6个月的使用凭证,获得1000次免费的转换次数。

在价格方面,可以使用的按量付费的模式完全访问所有 PDF 服务 API,包括 PDF 提取 API 和文档生成 API,每笔文件交易0.05 美元。

如果有大量需求,可能需要联系Adobe销售进行采购。

(5)信息来源

adobe.io/apis/documentc

l PDFMiner

(1)简介

PDFMiner是一个从PDF文档中提取信息的工具。与其他PDF相关工具不同,它完全专注于获取和分析文本数据。PDFMiner允许获取页面中文本的确切位置,以及其他信息,例如字体或线条。它包括一个PDF转换器,可以将PDF文件转换为其他文本格式(如HTML)。它有一个可扩展的 PDF 解析器,可用于文本分析以外的其他目的。

(2)主要功能特点

提供布局分析功能 。按照页为单位,生成LTPage对象,可以解析其中的LTTextBox文本元素,LTLine直线元素,LTFigure表单对象使用的区域元素,LTRect矩形元素和LTImage图片元素。

提供获取目录功能 。当PDF文件目录部分设置了超链接,可以使用PDFMiner 提供访问文档目录(“大纲”)的功能。如果目录无超链接,则无法使用此功能。

不支持PDF扫描件 。工具包明确表示,无法识别绘制为需要OCR技术识别的图像中的文本内容。

(3)结果形式

返回LTPage对象。

(4)注意事项

该工具包多用来进行pdf文本提取,对按段落进行的文本提取比较有优势。

(5)信息来源

unixuser.org/~euske/pyt

l pdfplumber

(1)简介

pdfplumber是一个可以处理pdf格式信息的库,可以查找关于每个文本字符、矩阵、和行的详细信息,也可以对表格进行提取并进行可视化调试。

(2)主要功能特点

可返回csv或json格式的信息 ,包括pdf级和页面级的元数据以及字典的嵌套属性。

可以指定页面以及页面范围进行解析 ,以空格分隔、1索引的页面列表或带连字符的页面范围。例如,1, 11-15将返回第 1、11、12、13、14 和 15 页的数据。

可以指定解析的类型 ,比如char、rect、line、curve、image或annot等,默认为所有可用。

(3)结果形式

返回pdfplumber.Page对象。

(4)注意事项

有评论说,该工具包解析条件比较苛刻,除线条完美包裹的表格,其他都有问题。

(5)信息来源

github.com/jsvine/pdfpl

l pdflux(庖丁科技)

(1)简介

这是一款由庖丁科技研发的人工智能产品,主要面向金融类文档中有线框表格和复杂排版表格的抽取,进行复制和下载。当前市场上已有的各类业务产品或技术解决方案, 其底层技术实现方式基本分为依赖数百人团队的纯手工复制粘贴和运用半自动化工具进行表格提取再辅以人工效验 这也是现有各类金融投研或数据提供商只能提供金融文档内较常用的表格或数据更新速度滞后的原因。

(2)主要功能特点

可提取有线框表格及复杂排版表格 ,并进行复制和下载。

运用人工智能及深度学习技术,提取准确率达到99%以上 。训练机器达到有效识别复杂排版表格的结构,从金融类文档中抽取各类结构的表格,大幅减少非结构化数据转化中的损耗,颠覆性的提高抽取表格类结构化数据的有效性。

提供私有化部署和SaaS服务(toB),存在PDFlux客户端(toC)

具备pdf格式转化为Word、Excel、HTML、EPUB、MOBI的能力

存在API服务调用接口

(3)结果形式

返回json格式。

(4)注意事项

该公司主营业务就是针对金融文件的语义分析与提取,因此与我们经营业务存在契合度。

(5)信息来源

paodingai.com/

pdflux.com/guide/basic

l Camelot

(1)简介

是一个python工具包,用于提取pdf文档表格数据。

(2)主要功能特点

Camelot仅适用于基于文本的 PDF,不适用于扫描文档

主要用于对pdf中表格进行提取,与Tabula类似。

不适用于pdf页数较多的文件,一般推荐仅处理存在表格的页面。

具有针对pdf表格提取的多种配置。

(3)结果形式

返回Pandas的DF对象。

(4)注意事项

对表格提取很方便,对文字信息提取支持度不高。

(5)信息来源

camelot-py.readthedocs.io

l PyPDF2

(1)简介

一个纯Python PDF库,能够拆分、合并、裁剪和转换PDF文件的页面。它还可以向PDF文件添加自定义数据、查看选项和密码。它可以从PDF中检索文本和元数据,也可以将整个文件合并在一起。

(2)主要功能特点

具备针对pdf 的拆分、合并、裁剪、转换的功能。

(3)结果形式

基于所调用函数,返回字典等多种形式。

(4)注意事项

对文字提取有一定作用

(5)信息来源

pythonhosted.org/PyPDF2

l 文因互联

国内的金融文本自动解析平台,运用自然语言处理和知识图谱技术解析 100 多类金融文档,包括招股书、产品说明书、监管函、研报、公告等,实现搜索、问答、自动生成报告、财务审核等,从非结构化文本中提取结构化数据;二是金融行业标准化流程的自动化应用,包括财务分析、会计勾稽关系验证、公告合规性检查、信贷业务合规性审核等。

质量方面,表格准确率 99%,文本 95%以上。准确率是指目标信息点的准确率(例如招股书大约有300-400 个信息点),具体由客户来定义。审计客户的准确率要求更高(原则上要求 100%,能达到 99.8%)。(2)速度:200 页的文档处理时间为30 秒,行业平均水平为 10 分钟。

l 犀语科技

主要有三个产品。

犀察:主要应用于金融文本的校验和检查。主要针对招股说明书、投资报告、银行信贷报告等强规则的文本,进行自动化的审核,查找错误、疏漏等并提示修正。例如:1、财务报表审核系统:表内检测、跨表检测、文表检测、明细加总、衍生指标、同比变动检测等。各种情况不可能枚举,NLP 技术能识别。2、债券的发行文件审核,合规性、真实性、风险预警等。3、IPO 文件的合规性审核、实质性审核、真实性审核、财务指标异常的识别、企业舆情监控、多文档检测。4、研报质控。引用事件的准确性、合规性、敏感词、黑名单、查重等。

犀文:主要是金融文档的提取和结构化处理,包括图片/扫描件。将非结构化数据变成结构化数据,便于存档及查找。报告比对,第一稿和最后

一稿的比对

犀见:主要用于舆情监测、事件影响等。给民生银行做的项目。针对海量的金融信息,智能化的解读分析,判断市场事件对金融业务的影响,协助决策及风控。

2、间接提取

间接提取是将pdf文件转化为其他容易操作的文件格式,然后再针对易操作的文件格式进行信息提取。针对PDF扫描件,只能通过OCR技术,转化为其他可编辑文件后再进行处理。目前转换为其他文件类型的以在线工具居多。

l OCRmyPDF+Poppler

OCRmyPDF是一个OCR识别PDF的工具包,软件基于最先进的开源文本识别软件Tesseract,由 Google 维护和进一步开发。该软件会自动识别页面方向、纠正倾斜的页面、清除图像伪影,并将 OCR 文本层添加到 PDF。只有文档语言必须作为参数给出。

Poppler是一个用来渲染PDF文档的自由程序库,其开发受 freedesktop.org 支持。可以通过Poppler的pdftotext函数,将pdf中的文字转换为txt文件。

ocrmypdf.readthedocs.io

programminghistorian.org

l PyMuPDF

PyMuPDF可从Python环境中访问MuPDF的许多重要功能,而MuPDF可以访问PDF、XPS、OpenXPS、CBZ(漫画书档案),FB2和EPUB(电子书)格式的文件,这些是扩展名为.pdf,.xps,.oxps,.cbz,.fb2或.epub的文件。可用于提取文本和图片。

l PDFTables

是一项商业服务,提供从PDF文档附带的表格中提取的内容。提供一个API,以便PDFTables可以用作SAAS。

l PyPDF2

是一个Python工具包,用于提取pdf文件元数据信息和文本信息,可通过此转化为txt文档。

l Able2Extract

Able2Extract是一个商用服务产品。提供了对pdf转化为word、excel、ppt等文件类型接口。

购买许可证费用,Able2Extract Professional 16(完整许可)

永久:149.95美元

30天:34.95美元

l PDFelement

一款商用服务产品,可以对pdf转化为其他类别文件格式。

提供提取服务,但不足的是需要手动绘制转化的区域用于提取。

提供类似wps的软件,用于提供服务,但没有类似API接口。

pdf.wondershare.com/pdf

l PDF2Go

是一个免费的pdf文件转化服务产品,但是每天使用有一定限制,付费升级后无限制。

功能包括转化pdf文件为txt、excel、ppt、jpg、word等多种类型文件。同时提供对pdf文件本身加密、压缩、修复等功能。

一年服务费用85美元。

pdf2go.com/

l 超级PDF

一款商用服务产品,可以对pdf转化为其他类别文件格式。每天有3次使用机会,且每次上传文件不得超过15M,升级后限制解除。

xpdf.net/

l abbyy

是一个商业化的PDF解决方案提供商,OCR识别准确率很高,业界比较有名,可转化为word等可编辑格式。适用于扫描件的pdf版本的转化。

报价如下:

l 机器学习与深度学习领域的开源方案

给出了有关算法,例如利用Keras-RetinaNet,通过对PDF转化为图片后进行算法学习。 zhuanlan.zhihu.com/p/16

基本均采用NLP+CV融合的非结构化信息处理进行。 on-demand.gputechconf.com


喜欢请三联哦!!!谢谢支持!!!

编辑于 2021-10-15 15:38