Python中pdfplumber如何提取pdf中的表格数据

小编给大家分享一下Python中pdfplumber如何提取pdf中的表格数据,希望大家阅读完这篇文章后大所收获,下面让我们一起去学习方法吧!

创新互联是一家网站制作、成都网站建设,提供网页设计,网站设计,网站制作,建网站,按需求定制开发,网站开发公司,自2013年起是互联行业建设者,服务者。以提升客户品牌价值为核心业务,全程参与项目的网站策划设计制作,前端开发,后台程序制作以及后期项目运营并提出专业建议和思路。

作为一个强大的pdf文件解析工具,pdfplumber库可迅速将pdf文档转换为易于处理的txt文档,并输出pdf文档的字符、页面、页码等信息,还可进行页面可视化操作。使用pdfplumber库前需先安装,即在cmd命令行中输入:

pip install pdfplumber

pdfplumber库提供了两种pdf表格提取函数,分别为.extract_tables( ).extract_table( ),两种函数提取结果存在差异。为进行演示,我们网站上下载了一份短期融资券主体信用评级报告,为pdf格式。任意选取某一表格,其界面如下:

Python中pdfplumber如何提取pdf中的表格数据


(1).extract_tables( )


可输出页面中所有表格,并返回一个嵌套列表,其结构层次为table→row→cell。此时,页面上的整个表格被放入一个大列表中,原表格中的各行组成该大列表中的各个子列表。若需输出单个外层列表元素,得到的便是由原表格同一行元素构成的列表。例如,我们执行如下程序:

import pdfplumber 
with pdfplumber.open(r'F:python财务报表主体评级报告.pdf')  as pdf:
   page = pdf.pages[45]    #设置操作页面 
   for row inpage.extract_tables() :
          print(row)
          print(row[0])   #打印外层列表第一个元素


输出结果:


Python中pdfplumber如何提取pdf中的表格数据


(2).extract_table( )


返回多个独立列表,其结构层次为row→cell。若页面中存在多个行数相同的表格,则默认输出顶部表格;否则,仅输出行数最多的一个表格。此时,表格的每一行都作为一个单独的列表,列表中每个元素即为原表格的各个单元格内容。若需输出某个元素,得到的便是具体的数值或字符串。如下:

with pdfplumber.open(r'F:python财务报表主体评级报告.pdf') as pdf:
     page = pdf.pages[45]
     for row in page.extract_table() : 
         print(row) 
         print(row[0])      #打印每个列表对应的第一个元素


输出结果:


Python中pdfplumber如何提取pdf中的表格数据


感谢你能够认真阅读完这篇文章,希望小编分享Python中pdfplumber如何提取pdf中的表格数据内容对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,遇到问题就找创新互联,详细的解决方法等着你来学习!


分享文章:Python中pdfplumber如何提取pdf中的表格数据
地址分享:http://azwzsj.com/article/pjepge.html