![Python で PDF テーブルを抽出する](images/Extract%20Tables%20in%20PDF%20in%20Python.png#center)
この記事では、Python を使用して PDF ファイルからテーブルを抽出する方法を学習します。 PDF はデータを共有するための一般的な形式ですが、PDF からテーブルを抽出するのは困難な作業になる場合があります。このタスクに役立つ利用可能な Python ライブラリがいくつかあります。それでも、データの正確な抽出が欠けている可能性があります。
それでは、数行のコードで PDF から表形式のデータを高精度で抽出する方法を見てみましょう。このチュートリアルを終了すると、Python を使用して PDF ファイルから表を抽出し、必要に応じて操作できるようになります。
PDF からテーブルを抽出する Python ライブラリ
PDF ファイルのテーブルからデータを抽出するには、Aspose.PDF for Python を使用します。これは、PDF の処理と操作のための多数の機能を備えた強力な Python ライブラリです。次の pip コマンドを使用して、Aspose.PDF for Python をインストールできます。
pip install aspose-pdf
Python で PDF からテーブルを抽出する
以下は、Python を使用して PDF のテーブルからデータを抽出する手順です。
- Document クラスを使用して PDF ファイルを読み込みます。
- テーブルが配置されている PDF 内のページの参照を取得します。
- TableAbsorber オブジェクトを初期化し、TableAbsorber.visit(Page) メソッドを使用して選択したページにアクセスします。
- ループで、TableAbsorber.tablelist コレクション内のテーブルのリストを反復処理します。
- テーブルごとに、AbsorbedTable.rowlist の行のコレクションを反復処理します。
- 吸収された行ごとに、AbsorbedRow.celllist のセルのコレクションを反復処理します。
- 最後に、吸収された各セルの textfragments コレクションをループして、テキストを出力します。
次のコード サンプルは、Python で PDF テーブルからテキストを抽出する方法を示しています。
import aspose.pdf as pdf
# PDFファイルを読み込む
pdfDocument = pdf.Document("input.pdf")
# TableAbsorber オブジェクトの初期化
tableAbsorber = pdf.text.TableAbsorber()
# 最初のページのすべてのテーブルを解析します
tableAbsorber.visit(pdfDocument.pages[1])
# 最初のテーブルの参照を取得する
absorbedTable = tableAbsorber.table_list[0]
# テーブル内のすべての行を反復処理します
for pdfTableRow in absorbedTable.row_list:
# 行のすべての列を反復処理します
for pdfTableCell in pdfTableRow.cell_list:
# テキストの断片を取得する
textFragmentCollection = pdfTableCell.text_fragments
# テキストの断片を繰り返し処理する
for textFragment in textFragmentCollection:
# テキストを印刷する
print(textFragment.text)
PDF テーブルを抽出するオンライン ツール
Aspose.PDF for Python に基づく無料のオンライン ツール PDF テーブル エクストラクタ を試して、PDF ファイルからテーブルを抽出することもできます。
![](images/Online%20PDF%20Table%20Extractor.png)
Python PDF ライブラリを無料で使用する
無料の一時ライセンス を取得して、PDF ファイルのテーブルから制限なくデータを抽出できます。
Python PDF ライブラリを調べる
ドキュメント を使用して、Python PDF ライブラリについて詳しく調べることができます。また、フォーラム に質問を投稿することもできます。
結論
この記事では、Python を使用して PDF のテーブルからデータを抽出する方法を学習しました。少し変更を加えた同じコードを使用して、PDF 内のすべてのページから表を抽出できます。同様に、ページ上のすべてのテーブルまたは特定のテーブルからデータを抽出できます。アプリケーションに Aspose.PDF for Python をインストールするだけで、PDF ファイルから表形式のデータをすばやく簡単に抽出できます。