社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

跟小白学Python数据分析——提取PDF表格数据

小蚊子数据分析 • 4 年前 • 398 次点击  

我们有下面一张PDF格式存储的表格,现在需要使用Python将它提取出来


长按识别下方二维码,并关注公众号

回复“PDF”获取案例数据


使用Python提取表格数据需要使用pdfplumber模块,打开CMD,安装代码如下:
1pip install pdfplumber
安装完之后,将需要使用的模块导入
1import pdfplumber
2import pandas as pd
然后打开PDF文件
1# 使用with语句打开pdf文件
2with pdfplumber.open("D:\\python\\cai\\yq.pdf"as pdf:
3    # pages[0]表示取第1页
4    page = pdf.pages[0]
我们来打印输出下获取到的文本,这句语句只是帮我们验证下是否成功获取到PDF里的内容
1print(page.extract_text())
执行的结果如下,看来是成功了

然后可以使用extract_table()函数获取表格,如果有多个表格,可以使用extract_tables()函数,就是多了个s
1d1=page.extract_table()
执行代码后,将得到一个列表,还不是数据框

所以最后一步就是将列表转为数据框就可以了,代码如下:
1df = pd.DataFrame(d1[1:], columns=d1[0]) 
执行代码后,将得到了df数据

有几个注意事项要提醒下:
1.pdf表格中的数据,对于同一个数据或内容,不要有换行,如果换行,可能被识别为2个数据;
2.pdf中的表格一定要有边框,没有边框的话,否则使用extract_table()函数就无法获取表格数据,extract_text()还是可以获取文本信息的,不要问我是怎么知道的,说多了都是泪。


如果你喜欢本文,可以点击右下角在看
如果你在跟着学习,请在留言区留言:打卡
如果你刚看到本文,可以查看本系列历史文章跟着学习:
跟小白学Python数据分析——Anaconda安装
跟小白学Python数据分析——使用spyder
跟小白学Python数据分析——数据导入1
跟小白学Python数据分析——数据导入2

跟小白学Python数据分析——描述性统计分析

跟小白学Python数据分析——分组分析

跟小白学Python数据分析——列表

跟小白学Python数据分析——数据框

跟小白学Python数据分析——记录抽取

跟小白学Python数据分析——记录合并

跟小白学Python数据分析——数据导出

跟小白学Python数据分析——For循环

跟小白学Python数据分析——批量合并CSV文件

跟小白学Python数据分析——批量拆分Excel文件

-----------------

希望系统、快速学习Python数据分析知识,可以学习

数据分析专家@文彤老师

跟文彤老师学Python数据分析》系列视频课程

包含以下三门课程

Python数据分析--玩转Pandas

Python数据分析--玩转数据可视化

玩转Python统计分析


以上顺序也是学习的建议顺序

课程提供讲义(含代码)与数据供练习

学习过程有问题可加Q群与老师交流讨论

如还有其他问题也可添加课程助理微信号咨询,添加时请注明所咨询的课程

参加课程学习,可享受6折优惠

购买课程直接点击文末“阅读原文”进入即可

    

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/62928
 
398 次点击