pdfplumber和fitz的区别
pdfplumber:速度慢,提取出的文字全
fitz:速度快,例如‘判断是文字版还是扫描版PDF’这部分会比pdfplumber快很多;有些pdf文字的部分文字明明可选但抽不出来?
此外解析带表格的pdf还有一些其他方法:
1、pdfminer:较复杂、不能直接还原出表格,据说是pdfplumber的底层
2、tabula:依赖java、识别有问题、难以区分多张表
3、各个表格解析的开源项目,如paddleocr、tablemaster、camelot...
4、各个人工智能服务供应商,注册服务后获取token,需要上传文件后下载,如庖丁科技的pdflux
为什么会说tabula依赖java
Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。常用的Java平台基于Java1.8,最近版本为Java19。