PDFをExcelに変換するPython

概要

この記事は、Pythonを使用してPDFをExcel形式に変換する方法を説明します。以下のトピックをカバーしています。

フォーマット: XLS

フォーマット: XLSX

フォーマット: Excel

フォーマット: CSV

フォーマット: ODS

PDFからEXCELへの変換をPythonで行う

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)

手順: PDFをPythonで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. ソースPDFドキュメントを使用して、Document オブジェクトのインスタンスを作成します。
  2. MinimizeTheNumberOfWorksheets = True を使用して、ExcelSaveOptions のインスタンスを作成します。
  3. Document.Save() メソッドを呼び出し、それに ExcelSaveOptions を渡すことにより、単一のワークシートを持つ XLS または XLSX 形式で保存します。

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. Format = ExcelSaveOptions.ExcelFormat.CSVを使用してExcelSaveOptionsのインスタンスを作成します。
  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. Format = ExcelSaveOptions.ExcelFormat.ODSExcelSaveOptionsのインスタンスを作成します。
  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