使用Python的pdfplumber库批量提取PDF表格并转换为Excel格式
欢迎来到本际云服务器推荐网的小编小本本,今天给大家介绍使用Python的pdfplumber库批量提取PDF表格并转换为Excel格式的实例详细说明。如果你需要从多个PDF文件中提取信息并存储到Excel中,可以使用pdfplumber库进行快速处理。

pdfplumber库介绍
pdfplumber是一个开源的Python工具库,可以轻松获取PDF的所有信息,包括文字、表格、数据图表、规格等。为了达到我们本文的需求,我们将关键使用pdfplumber来提取PDF表格内容。
代码编写
1. 导入相关库
import pdfplumber
import pandas as pd
2. 加载PDF,并获取PDF页面数量
pdf = pdfplumber.open("/Users/wangwangyuqing/Desktop/1.pdf")
pages = pdf.pages
3. 获取多个PDF文件中的表格,存储为Excel
if len(pages) > 1:
tables = []
for each in pages:
table = each.extract_table()
tables.extend(table)
else:
tables = pages.extract_table()
data = pd.DataFrame(tables[1:], columns=tables[0])
data.to_excel("/Users/wangwangyuqing/Desktop/1.xlsx", index=False)
4. 提取文件夹下多个PDF文档,存储为Excel
import os
import glob
path = r'/Users/wangwangyuqing/Desktop/pdf文件'
for f in glob.glob(os.path.join(path, "*.pdf")):
res = save_pdf_to_excel(f)
print(res)
def save_pdf_to_excel(path):
pdf = pdfplumber.open(path)
pages = pdf.pages
if len(pages) > 1:
tables = []
for each in pages:
table = each.extract_table()
tables.extend(table)
else:
tables = pages.extract_table()
data = pd.DataFrame(tables[1:], columns=tables[0])
file_name = path.split('/')[-1].split('.')[0] + '.xlsx'
data.to_excel("/Users/wangwangyuqing/Desktop/data/{}".format(file_name), index=False)
return '保存成功!'
总结
Python还有其他库可以用于处理PDF,例如PyPDF2和pdfminer等。我们选择pdfplumber的主要原因是它可以轻松浏览相关PDF的所有详细资料,包括创作者、来源、时间等,以及支持自定义特征和报表的提取方法。你可以根据自己的数据需求,尝试使用pdfplumber的其他功能。
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/6633.html
