如何使用Python将PDF转为Excel

PDF文件是一种静态文档格式,通常难以编辑,而Excel则是一个灵活的表格工具。如果你需要处理PDF表格中的数据,那么将其导出为Excel文件可以大大节省工作时间和精力。Excel提供的强大数据编辑和格式化功能,允许你对转换后的PDF数据进行修改、排序、筛选、计算等操作。同时,你还可以调整单元格大小、更改字体、应用样式等。本文将提供在Python中将PDF表格转换为Excel文件的解决方案。

一、环境准备

需要先安装Spire.PDF for Python库来帮助实现PDF转Excel。可以通过以下pip命令安装:(或参考 如何在 VS Code 中安装 Spire.PDF for Python)

复制代码
pip install Spire.PDF

二、Python 将PDF转为Excel 实现步骤

  1. 加载PDF文档。

  2. 创建XlsxLineLayoutOptions 类的对象来指定转换选项。

  3. 应用上述设置的转换选项,然后使用 PdfDocument.SaveToFile() 将PDF文件保存为Excel xlsx表格。

其中XlsxLineLayoutOptions类的构造函数接受以下5个参数:

|-------------------------------|-----------------------------------------|
| 参数 | 描述 |
| convertToMultipleSheet (bool) | 表示是否将多个 PDF 页面渲染到一个 Excel 工作表中 |
| rotatedText (bool) | 表示是否显示旋转的文本 |
| splitCell (bool) | 表示一个包含多行文本的 PDF 表格单元格是否会在 Excel 中被拆分成多行 |
| wrapText (bool) | 表示是否对 Excel 单元格中的文本进行换行 |
| overlapText (bool) | 表示是否显示重叠的文本 |

测试代码:

复制代码
from spire.pdf.common import *
from spire.pdf import *
 
# 创建PdfDocument对象
pdf = PdfDocument()
 
# 加载PDF文档
pdf.LoadFromFile("数据.pdf")
 
# 创建 XlsxLineLayoutOptions 对象来指定转换选项
convertOptions = XlsxLineLayoutOptions(True, True, False, True, False)
 
# 设置转换选项
pdf.ConvertOptions.SetPdfToXlsxOptions(convertOptions)
 
# 将PDF文档保存为Excel XLSX格式
pdf.SaveToFile("Pdf转Excel.xlsx", FileFormat.XLSX)
pdf.Close()
 

转换结果:

实现更多Python对PDF文档的处理功能:Spire.PDF for Python 中文教程

相关推荐
jason.zeng@150220719 分钟前
(六)Prompt 优化
python·ai·langchain·prompt·ai编程·llama
全栈练习生1 小时前
大模型推理全链路
python·ai
泡海椒1 小时前
JQuick-Excel VALIDATION 实战:用作用范围约束 Excel 导入校验
开发语言·python·excel
小静AI工程实验室3 小时前
Python 爬虫解析 JSON-LD:多块 script、@graph 与坏数据的 9 个边界
爬虫·python·json
jason.zeng@15022073 小时前
(八)现有架构上新增一个通用Excel导出工具
python·架构·langchain·excel·llama
袁袁袁袁满3 小时前
AI Agent 如何“看懂“互联网?
爬虫·python·自动化·爬虫实战·多线程爬虫
泡海椒3 小时前
JQuick-Excel 实战:用 VALIDATION 建立可维护的 Excel 导入校验
开发语言·python·excel
Duang007_3 小时前
生产可观测性:从“系统慢“到“根因“的完整链路(Go / TypeScript)
后端·python·golang·typescript·prometheus
jason.zeng@15022073 小时前
(九)多轮对话式新增维修记录实现方案
python·prompt·交互·llama
黑妹天下第一乖3 小时前
小智改造实战解读-首 token 延迟去哪了:云端与端侧大模型的分段对照
开发语言·人工智能·python·嵌入式硬件·自然语言处理·iot