单页网站建设,福田公司投诉电话,建立平台网站需要花多少钱,夫唯seo教程前两天有朋友问我#xff0c;你能不能帮我把pdf中的表格数据抓出来#xff0c;输出到excel中#xff0c;我说我试试。 最近看资料发现python有很多库都可以完成pdf中的表格数据抓取#xff0c;选择其中一种尝试#xff1a;pdfplumber。
一、简单介绍
在使用之前我们简单… 前两天有朋友问我你能不能帮我把pdf中的表格数据抓出来输出到excel中我说我试试。 最近看资料发现python有很多库都可以完成pdf中的表格数据抓取选择其中一种尝试pdfplumber。
一、简单介绍
在使用之前我们简单了解一下
1.pdfplumber是什么
pdfplumber是一款基于pdfminer完全由python开发的pdf文档解析库不仅可以获取每个字符、矩形框、线等对象的具体信息而且还可以抽取文本和表格。目前pdfplumber仅支持可编辑的pdf文档。2.pdfplumber和pdfminer比优势在哪
二者都可以获取到每个字符、矩形框、线等对象的具体信息但是pdfplumber在pdfminer的基础上进行了封装和处理使得到的对象更易于使用对用户更友好。二者都能对文本解析但是pdfminer输出的文本在布局上可能与原文差别比较大但是pdfplumber抽取出的文本与原文可以有更高的一致性。pdfplumber实现了表格抽取逻辑基于最基本的字符、线框等对象的位置信息定位、识别pdf文档中的表格
二.实际使用
安装 pdfplumber
pip install pdfplumber实现
# 导入必要的库
import pdfplumber
import pandas as pddef read_pdf_to_excel(read_path, save_path, header_index):# 读取文件内容如果有多个表格会读取到多个表格页pdf_2020 pdfplumber.open(read_path)# 创建结果数据集result_df pd.DataFrame()for page in pdf_2020.pages:# 读取表格内容table page.extract_table()# print(table)# 进行表格数据格式化df_detail pd.DataFrame(table[(header_index1):], columnstable[header_index])# 合并表格数据到结果数据集result_df pd.concat([df_detail, result_df], ignore_indexTrue)result_df.to_excel(excel_writersave_path, indexFalse)read_path r/***/**.pdf
save_path r/***/**.xlsx
# 这里的1是申明表格表头的数据下标是几
read_pdf_to_excel(read_path, save_path, 1)Python提取pdf中的表格数据输出到excel的功能就实现了。如果和你需要抓去的表格不太相符合可以自己调整参数。