python现在处理word、Excel、pdf等文档有很多的库,今天学习一个处理pdf的库:pdfplumber,主要学习提取文本内容和表格。

安装

pip install pdfplumber

提取文本 extract_text()

import pdfplumber
# 打开一PDF文档,比如打开《浪潮之巅》
pdf = pdfplumber.open('浪潮之巅.pdf')
# 提取第一页的本文内容
text = pdf.pages[0].extract_text()
print(text)

如下输出,左边是我们的代码输出,右边是PDF的第一页内容,提取的text整体是一个字符串;

 

提取文本 extract_words()

提取文本还提供了另一个方法

text = pdf.pages[0].extract_words()
print(text)

其输出如下,提取出各部分的页面位置信息整体放在一个list中;

提取表格 extract_table()  和  extract_tables()

我们换另外一个有表格的PDF文档来尝试一下,文档第一页内容如下(文档若侵权,请联系删除):

pdf_table = pdfplumber.open('M2021011300001742_1.pdf')
print(pdf_table.pages[0].extract_table())

结果发现只提取页面中的最后一个表格内容信息,输出如下:

所以我们再试一试extract_tables()

此时发现便可以把所有的表格信息都提取出来,这便是两个方法的区别。

python学习笔记之读取pdf文件库pdfplumber(一)相关推荐

  1. python学习笔记:读取xyz文件

    在药学的Ai研发过程中,经常要制作清洗文件和处理各种文件格式.利用openBabel这样功能能够大大减轻转换过程的麻烦.然而偶然也需要应对一下场景下处理xyz文件抽取相关的坐标体系去计算小分子之间的作 ...

  2. Python学习笔记——openpyxl读取工作表的数据有效性设置信息

    今天在用openpyxl读取表格信息时,需要根据表格中单元格的数据有效性设置中的序列内容来进行下一步操作判断.但是对于如何获取该序列的字符串值一点也不了解,网上查找资料只找到用DataValidati ...

  3. PYTHON学习笔记之(一)2020.08

    PYTHON学习笔记之(一)2020.08 Python基础 数据类型 常见的列表.字典,以及元组.集合. 1 列表 list 1.1 列表转换字符串 stu = ['王一', '李二', '张三'] ...

  4. python 学习笔记 12 -- 写一个脚本获取城市天气信息

    近期在玩树莓派,前面写过一篇在树莓派上使用1602液晶显示屏,那么可以显示后最重要的就是显示什么的问题了. 最easy想到的就是显示时间啊,CPU利用率啊.IP地址之类的.那么我认为呢,假设可以显示当 ...

  5. Python学习笔记(六)

    1. IO编程 1.1 文件读写 1.2 StringIO和BytesIO 1.3 操作文件和目录 1.4 序列化 2. 进程和线程 2.1 多进程 2.2 多线程 2.3 ThreadLocal 2 ...

  6. Python 学习笔记(3)对txt文件的读与写操作(下)

    上一章节我们讨论了如何对txt文本文件进行读写操作,这一张将讨论如何进行二进制文件的写与读.<Python 学习笔记(3)对txt文件的读与写操作(上)>的链接如下https://blog ...

  7. OpenCV之Python学习笔记(1)(2): 图像的载入、显示和保存 图像元素的访问、通道分离与合并

    OpenCV之Python学习笔记 一直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看到一本国外的新书< ...

  8. python学习笔记(五岁以下儿童)深深浅浅的副本复印件,文件和文件夹

    python学习笔记(五岁以下儿童) 深拷贝-浅拷贝 浅拷贝就是对引用的拷贝(仅仅拷贝父对象) 深拷贝就是对对象的资源拷贝 普通的复制,仅仅是添加了一个指向同一个地址空间的"标签" ...

  9. Python学习笔记:Day 10 用户注册和登陆

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

  10. Python学习笔记:Day 9 编写API

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

最新文章

  1. kdj python实现_一颗韭菜的自我修养:用Python分析下股市,练练手
  2. GLUT及其函数的用法整理
  3. cocos2d-x初探学习笔记(8)--场景特效
  4. Selenium - IWebDriver 控制scroll bar到底部
  5. 《认知设计:提升学习体验的艺术》——差距在哪里
  6. Java web--过滤器
  7. 区块链百科合集之 账 户 体 系
  8. 紫光输入法linux,紫光拼音输入法下载_紫光拼音输入法最新版下载-太平洋下载中心...
  9. celery报错 NotImplementedError: No result backend is configured
  10. Laravel文档梳理7、视图
  11. Svchost.exe病毒的简单处理
  12. 在子页面控制父页面iframe的高度
  13. 全面理解document.write()
  14. c语言电话本程序代码,C语言程序设计之电话簿
  15. 通俗易懂happens-before理解
  16. DCFPyL 前体,特异性膜抗原(PSMA)抑制剂[18F]DCFPyL的改进的合成的制作方法
  17. 基于MATLAB的LDPC编译码误码率仿真,仿真调制为64QAM,对比不同译码迭代次数
  18. 【浏览器插件推荐】Bookmarks clean up清除重复、废弃收藏夹
  19. 云职教课堂计算机文化基础,智慧职教云课堂西铁院《计算机文化基础》弹性学制网课答案...
  20. 利用js实现购物车相关功能

热门文章

  1. C++中编译速度与平时代码规范
  2. 餐饮后厨计算机应用,美萍餐饮管理系统,餐饮管理软件,餐饮软件,酒店收银系统,饭店点菜系统 --- 管理软件 美萍是专家!...
  3. java项目实战之404错误原因总结
  4. 含本土测量软件的Q-Vision+Kvaser CAN/CAN FD/LIN总线解决方案
  5. Python新闻网站项目-7.Django内容后台管理系统管理开发
  6. 基于springboot人事管理系统设计与实现
  7. 华为云devops认证考试课堂笔记2
  8. VC++可视化编程——创建空白窗口
  9. linux视频截取命令(ffmpeg)
  10. 【SQL Server】SQL2005的安装与配置、简单使用