使用 Python 将 PDF 转换为 Excel

概述

本文解释了如何使用 Python 将 PDF 转换为 Excel 格式。它涵盖以下主题。

格式: XLS

格式: XLSX

格式: Excel

格式: CSV

格式: ODS

通过 Python 将 PDF 转换为 Excel

Aspose.PDF for Python via .NET 支持将 PDF 文件转换为 Excel 和 CSV 格式的功能。

Aspose.PDF for Python via Java 是一个 PDF 操作组件,我们引入了一个功能,可以将 PDF 文件渲染为 Excel 工作簿(XLSX 文件)。在此转换过程中,PDF 文件的各个页面将被转换为 Excel 工作表。

以下代码片段展示了使用 Aspose.PDF for Python via Java 将 PDF 文件转换为 XLS 或 XLSX 格式的过程。

步骤:在 Python 中将 PDF 转换为 XLS

  1. 使用源 PDF 文档创建 Document 对象的实例。
  2. 创建 ExcelSaveOptions 的实例。
  3. 通过调用 Document.Save() 方法并传递 ExcelSaveOptions 将其保存为 XLS 格式,指定 .xls 扩展名



from asposepdf import Api


# 初始化许可证
documentName = "testdata/license/Aspose.PDF.PythonviaJava.lic"
licenseObject = Api.License()
licenseObject.setLicense(documentName)

# 从字节数组转换
documentName = "testdata/source.pdf"
with open(documentName, "rb") as file:
    byte_array = file.read()
doc = Api.Document(byte_array)
documentOutName = "testout/result1.xls"
doc.save(documentOutName, Api.SaveFormat.Excel)

# 从文件转换
documentName = "testdata/source.pdf"
doc = Api.Document(documentName)
documentOutName = "testout/result2.xls"
doc.save(documentOutName, Api.SaveFormat.Excel)


# 从字节数组转换
documentName = "testdata/source.pdf"
with open(documentName, "rb") as file:
    byte_array = file.read()
doc = Api.Document(byte_array)
documentOutName = "testout/result3.xls"
save_option = Api.ExcelSaveOptions()
save_option._format = Api.ExcelSaveOptions.ExcelFormat.XMLSpreadSheet2003
doc.save(documentOutName, Api.SaveFormat.Excel)

# 从文件转换
documentName = "testdata/source.pdf"
doc = Api.Document(documentName)
documentOutName = "testout/result4.xls"
save_option = Api.ExcelSaveOptions()
save_option._format = Api.ExcelSaveOptions.ExcelFormat.XMLSpreadSheet2003
doc.save(documentOutName, Api.SaveFormat.Excel)

步骤:在 Python 中将 PDF 转换为 XLSX

  1. 使用源 PDF 文档创建 Document 对象的实例。
  2. 创建 ExcelSaveOptions 的实例。
  3. 通过调用 Document.Save() 方法并传递 ExcelSaveOptions 将其保存为 XLSX 格式,指定 .xlsx 扩展名

from asposepdf import Api

documentName = "testdata/source.pdf"
doc = Api.Document(documentName)
documentOutName = "testout/result.xlsx"
doc.save(documentOutName, save_option)

转换 PDF 为具有控制列的 XLS

在将 PDF 转换为 XLS 格式时,会在输出文件中添加一个空白列作为第一列。 在 ‘ExcelSaveOptions 类’ 中,InsertBlankColumnAtFirst 选项用于控制此列。其默认值为 true。


from asposepdf import Api

documentName = "testdata/source.pdf"
doc = Api.Document(documentName)
documentOutName = "testout/result.xlsx"
save_option = Api.ExcelSaveOptions()
save_option._format = Api.ExcelSaveOptions.ExcelFormat.XMLSpreadSheet2003
save_option._insertBlankColumnAtFirst = True
doc.save(documentOutName, save_option)

将 PDF 转换为单个 Excel 工作表

当将包含很多页面的 PDF 文件导出为 XLS 时,每个页面都被导出到 Excel 文件中的不同工作表。这是因为 MinimizeTheNumberOfWorksheets 属性默认设置为 false。为了确保所有页面都导出到输出 Excel 文件中的一个单独的工作表中,将 MinimizeTheNumberOfWorksheets 属性设置为 true。

步骤:在 Python 中将 PDF 转换为 XLS 或 XLSX 单个工作表

  1. 创建一个 Document 对象的实例,使用源 PDF 文档。
  2. 创建一个 ExcelSaveOptions 的实例,并设置 MinimizeTheNumberOfWorksheets = True
  3. 通过调用 Document.Save() 方法并传递 ExcelSaveOptions,将其保存为具有单个工作表的 XLSXLSX 格式。

from asposepdf import Api

documentName = "testdata/source.pdf"
doc = Api.Document(documentName)
documentOutName = "testout/result.xls"
save_option = Api.ExcelSaveOptions()
save_option._format = Api.ExcelSaveOptions.ExcelFormat.XMLSpreadSheet2003
save_option._minimizeTheNumberOfWorksheets = True
# 将文件保存为 MS Excel 格式
doc.save(documentOutName, save_option)

转换为其他电子表格格式

转换为 CSV

转化为CSV格式的过程与上述相同。您所需要做的就是设置适当的格式。

步骤:在Python中将PDF转换为CSV

  1. 使用源PDF文档创建一个Document对象的实例。
  2. 创建一个ExcelSaveOptions实例,设置Format = ExcelSaveOptions.ExcelFormat.CSV
  3. 通过调用Document.Save()方法并传入ExcelSaveOptions来保存为CSV格式。

from asposepdf import Api

documentName = "testdata/source.pdf"
doc = Api.Document(documentName)
documentOutName = "testout/result.csv"
save_option = Api.ExcelSaveOptions()
save_option._format = Api.ExcelSaveOptions.ExcelFormat.CSV
doc.save(documentOutName, save_option)

转换为 ODS

步骤:在 Python 中将 PDF 转换为 ODS

  1. 使用源 PDF 文档创建 Document 对象的实例。
  2. 创建 ExcelSaveOptions 的实例,并设置 Format = ExcelSaveOptions.ExcelFormat.ODS
  3. 调用 Document.Save() 方法并传递 ExcelSaveOptions 将其保存为 ODS 格式。

转换为 ODS 格式的过程与其他格式相同。


from asposepdf import Api

documentName = "../../testdata/source.pdf"
doc = Api.Document(documentName)
documentOutName = "../../testout/result1.ods"
save_option = Api.ExcelSaveOptions()
save_option._format = Api.ExcelSaveOptions.ExcelFormat.ODS
doc.save(documentOutName, save_option)

另请参阅

本文还涵盖这些主题。代码与上述相同。

格式: Excel

格式: XLS

格式: XLSX

格式: CSV

格式: ODS