python如何解析PDF文件

python中读取pdf的方法:使用python第三方库pdfminerk3k

1.使用pdfminer库

pdfminer是一个主流的分析pdf的库。如果是python3版本,通过pip install pdfminer3k下载
对于pdfminer的学习,我参考的主要是pdf信息提取.
pdfminer将pdf解析为如图所示的形式:

但上面那篇参考文档的例子是关于LTText的,我要解析的文档基本是扫描件,即主要由LTImage组成,所以我接下来的内容主要围绕如何提取LTImage的文字。
我的思路是,事实上,LTImage就是图片,也就是说,可以将问题转换为如何提取图片的文字信息。

                        for element in lobj:#lobj:pdfminer.layout.LiFigure# element:pdfminer.layout.LTImagetext = element.stream.get_data()img ='out_img.jpg'with open(img,'wb')as fp:fp.write(text)

此时,out_img.jpg就是pdf其中一页。
接下来,提取图片文字。

2.提取图片文字

存在两种提取图片文字的方法;

  1. 使用第三方库pytesseract
  2. 调用外部api,如百度api

2.1 使用第三方库pytesseract

调用的主要问题在于安装过程有点小坑,如果要解析中文图片的话,还必须同时下载一个中文语言包。我参考的是Tesseract OCR V5.0安装教程(Windows)。
安装好后,一行代码就可以识别了

print(pytesseract.image_to_string(img, lang='chi_sim'))

缺点是识别效果很一般,如果有水印的话,会识别出一些奇怪的文字

2.2使用百度api

下载百度api

pip install baidu-aip -i http://pypi.douban.com/simple --t[rust](https://so.csdn.net/so/search?from=pc_blog_highlight&q=rust)ed-host pypi.douban.com

教程
1.我参考的主要是文字识别.
核心代码:

from aip import AipOcr
client = AipOcr(APP_ID, API_KEY, SECRECT_KEY)
# pic_path图片存储路径
i = open(pic_path, 'rb')
img = i.read()
message = client.basicGeneral(img) #通用文字识别
i.close();
for text in message.get('words_result'):print(text.get('words'))

注意,使用通用文字识别时,记得要先获取免费的使用次数获取免费的使用次数


该方法优点是识别比较准确,缺点是有限制次数。
如果文章存在问题,欢迎指出。能力有限,欢迎指导。

python如何解析PDF文件相关推荐

  1. python pdfminer解析pdf文件的每一行,得到每一行的坐标与每个字符的坐标

    pdfminer的基本用法请参考:https://blog.csdn.net/weixin_35757704/article/details/121621559 一句话(用变量line表示)相对于页面 ...

  2. python处理pdf实例_python使用pdfminer解析pdf文件的方法示例

    最近要做个从 pdf 文件中抽取文本内容的工具,大概查了一下 python 里可以使用 pdfminer 来实现.下面就看看怎样使用吧. PDFMiner是一个可以从PDF文档中提取信息的工具.与其他 ...

  3. python 读取pdf cid_python使用pdfminer解析pdf文件的方法示例

    最近要做个从 pdf 文件中抽取文本内容的工具,大概查了一下 python 里可以使用 pdfminer 来实现.下面就看看怎样使用吧. PDFMiner是一个可以从PDF文档中提取信息的工具.与其他 ...

  4. Python编程--使用PyPDF解析PDF文件中的元数据

    Python编程–使用PyPDF解析PDF文件中的元数据 元数据 作为一种文件里非常明显可见的对象,元数据可以存在于文档.电子表格.图片.音频和视频文件中.创建这些文件的应用程序可能会把文档的作者.创 ...

  5. python解析pdf中文乱码_解析PDF文件以及解决编码问题

    1.解析pdf文件 最近需要将pdf中文本提取出来,于是就了解了一下pdfminer 首先安装:pip3 install pdfminer3k 之后就是用pdfminer解析,不多说,直接上代码,这些 ...

  6. [299]python实现批量解析PDF文件提取内容并写入到Excel中

    摘要:最近需要将一批PDF文件中的某些数据整理到Excel中,因为文件数量接近20w+,手动更新几乎不现实,于是就提取关键词和内容动手写了个Python小工具,以实现自动完成上述目标. 要求: 读取P ...

  7. 【Python】用于在 Python 中处理 PDF 文件的 PyPDF2 库

    作者 | megha152 编译 | Flin 来源 | analyticsvidhya 介绍 PDF 代表便携式文档格式.它使用 .pdf 扩展名.这种类型的文件主要用于共享目的.它们不能被修改,从 ...

  8. Python+Miner解析PDF

    Python+Miner解析PDF 这个事呢,我们直接来吧,参考资料么一篇文档[312]Python提取pdf文本内容,官方参考文档在这里 一.安装 首先我们得明确一点,就是你的电脑上得有Python ...

  9. 解析PDF文件以及解决编码问题

    1.解析pdf文件 最近需要将pdf中文本提取出来,于是就了解了一下pdfminer 首先安装:pip3 install pdfminer3k 之后就是用pdfminer解析,不多说,直接上代码,这些 ...

最新文章

  1. 完全平方数(打表+二分)
  2. python计算商品总价_GitHub - ideaOzy/data_analysis: 基于Python的南京二手房数据采集及可视化分析...
  3. docker:Error running DeviceCreate (createSnapDevice) dm_task_run failed
  4. RabbitMQ消息手动应答生产者
  5. 人们常说的微型计算机简称为 机,(精华版)国家开放大学电大专科《计算机文化基础》网络课单项选择题题库及答案...
  6. 分享一个关于Java调用百度、高德API、ArcGIS地图获取逆地理的代码
  7. python3 socketserver源码解析_解读python中SocketServer源码
  8. 全栈出征,京东技术基石如何为“618”大促护航?
  9. UIImageView 与 UIImage 区别
  10. 【整理】C#2.0特性之局部类、空属类型和静态类
  11. ASProtect注册码使用教程|ASProtect SKE(加壳脱壳工具) 2.56 汉化注册版
  12. 邓小铁:博弈论研究中的学术快乐
  13. 冷水机组选型公式与运行参数
  14. web前端基础——超链接(dw笔记版)
  15. $monitor用法
  16. 如何成为虾皮的优选卖家-扬帆际海
  17. REST模式:POST,GET,PUT,DELETE,PATCH的含义与区别
  18. 第一节、linux中安装redis(一)
  19. canvas 变形记——移动、旋转、缩放、变形
  20. 骨传导耳机真的不伤耳吗、不入耳骨传导耳机推荐

热门文章

  1. fitbit手表中文说明书_Fitbit OS达到3.0版,这是新功能
  2. 性能调优攻略——来自酷壳陈皓
  3. STM32精英,战舰版 蜂鸣器播放菊次郎的夏天
  4. 详解人工智能领域重大突破:GPT-3
  5. Arcgis融合相邻且某些属性相同的图斑且属性取面积最大的图斑操作流程
  6. 关于解决Carsim2016找不Liscens问题的原生BIA法
  7. Synology群晖小技巧之百度网盘远程下载同步
  8. python 解决 0-1 二维背包问题
  9. linux系统安装--安装文件大于4G,fat32的硬盘或者优盘无法安装--解决方案
  10. 从零使用强化学习训练AI玩儿游戏(3)——使用Q-learning