python学习笔记(27)——pdfplumber库提取文本及表格内容基础操作

pdfplumber库安装地址:Search results · PyPI

安装后pip安装即可 

1、提取文本:extract_text()解析文本

代码练习:

import pdfplumber#引进pdfplumber库
#print(pdfplumber.__version__)#通过测试证明pdfplumber库安装成功
pdf=pdfplumber.open('F:\\XX公告.PDF')#打开pdf文件,路径之间符号用\\
pages=pdf.pages#通过pages属性获取所有页的信息,此时pages是一个列表
text_all=[]#创建一个空列表
for page in pages:#遍历所有页的数据
    text = page.extract_text()  # 用extract_text函数获取当前页的文本内容
    text_all.append(text)#把遍历的数据加到text_all列表中
text_all=''.join(text_all)#把text_all的列表转化成字符串
print(text_all)# 打印全部文本
pdf.close()# 关闭Pdf文件

运行结果:

 python学习笔记(27)——pdfplumber库提取文本及表格内容基础操作_第1张图片

2、提取表格:extract_tables()解析表格

代码练习1:直接打印extract_tables()函数提取到的列表内容

import pdfplumber
pdf=pdfplumber.open('F:\\05pycharm\\20220227学习\\珈伟新能:珈伟新能源股份有限公司关于公司实际控制人签署《纾困投资协议》《表决权委托协议》暨控制权拟发生变更的提示性公告.PDF')#打开PDF文件
pages=pdf.pages#pages属性获取所有页内容
page=pages[2]#提取第三页,因为表格在第三页
tables=page.extract_tables()#extract_tables()函数提取该页所有表格
table=tables[0]#取第一个表格
print(table)

运行结果:显示的试列表格式,需要进一步美化

通过整理分析:有1个大列表,里面嵌套了10个小列表

python学习笔记(27)——pdfplumber库提取文本及表格内容基础操作_第2张图片 

 代码练习2:把获取的表格内容用DataFrame展示

import pdfplumber
import pandas as pd
pdf=pdfplumber.open('F:\\05pycharm\\20220227学习\\珈伟新能:珈伟新能源股份有限公司关于公司实际控制人签署《纾困投资协议》《表决权委托协议》暨控制权拟发生变更的提示性公告.PDF')#打开PDF文件
pages=pdf.pages#pages属性获取所有页内容
page=pages[2]#提取第三页,因为表格在第三页
tables=page.extract_tables()#extract_tables()函数提取该页所有表格
table=tables[0]#取第一个表格
pd.set_option('display.max_columns',None)#把表格内容全部显示,默认显示部分
df=pd.DataFrame(table[1:],columns=table[0])#table[1:]是表格第二行及以下内容,table[0]是表格第一行,及表头内容

print(df)

运行结果:

python学习笔记(27)——pdfplumber库提取文本及表格内容基础操作_第3张图片

你可能感兴趣的:(python,开发语言,后端)