PDFは静的な文書形式であり、編集が困難な場合が多いのに対して、Excelは柔軟な表計算ツールです。PDFをExcelに変換すると、PDFの表データを簡単に修正、並べ替え、フィルタリング、計算できるだけでなく、PDFの表の元の形式やスタイルを維持することができます。
この記事では、Pythonを使用してPDFファイルをExcelファイルに変換する方法について説明します。
Pythonで簡単にPDFをExcel(Xls/ Xlsx)に変換する
Pythonで変換オプションを使用してPDFをExcelに変換する
Python PDF ライブラリのインストール
PDFからExcelへの変換を実現するために、まず、サードパーティライブラリSpire.PDF for Pythonを以下のpipコマンドでプログラムにインストールする必要があります。
pip install Spire.PDF
Pythonで簡単にPDFをExcel(Xls/ Xlsx)に変換する
たった3行のコードでPDFをエクセルに変換する簡単な変換方法があります。以下はPythonのサンプルコードです。
from spire.pdf.common import *
from spire.pdf import *
# PDF文書を読み込む
pdf = PdfDocument()
pdf.LoadFromFile("Table.pdf")
# PDFファイルをエクセルXLSX形式に保存する
pdf.SaveToFile("PdfToExcel.xlsx", FileFormat.XLSX)
pdf.Close()
Pythonで変換オプションを使用してPDFをExcelに変換する
変換プロセス中、Spire.PDF for PythonはPDFからExcelへの変換オプションを設定し、変換結果の精度をコントロールすることもできます。以下はPythonのサンプルコードです。
from spire.pdf.common import *
from spire.pdf import *
# PDF文書を読み込む
pdf = PdfDocument()
pdf.LoadFromFile("Table.pdf")
# 変換オプションを指定するためにXlsxLineLayoutOptionsオブジェクトを作成する。
# パラメーター: convertToMultipleSheet, rotatedText, splitCell, wrapText, overlapText
convertOptions = XlsxLineLayoutOptions(True, True, False, True, False)
pdf.ConvertOptions.SetPdfToXlsxOptions(convertOptions)
# PDFファイルをエクセルXLSX形式に保存する
pdf.SaveToFile("PdfToExcelwithOptions.xlsx", FileFormat.XLSX)
pdf.Close()
上記のコードでは、変換オプションを指定するため
XlsxLineLayoutOptions
クラスを使用しており、そのクラス・コンストラクタは以下に説明するように5つのパラメータを受け取ることがわかります:
-
convertToMultipleSheet(bool)
: PDFの各ページを同じExcel内の別々のワークシートに変換するかどうかを示します。Falseに設定すると、PDFファイル内のすべてのページが1つのExcelワークシートに変換されます。 -
rotatedText(bool)
: 回転したテキストを表示するかどうかを指定します。 -
splitCell(bool)
: PDF 表セル内のテキストを (2 行以上に渡って) 複数の Excel セルに分割するかどうかを示します。 -
wrapText(bool)
: Excel セル内のテキストを折り返すかどうかを指定します。 -
overlapText(bool)
: 重複テキストを表示するかどうかを示します。
Spire.PDF for Pythonライブラリを使用すると、特定のニーズに合わせてPDFからExcelへの変換をカスタマイズすることができます。