PDF形式をExcelに簡単に変換(Pythonを使用して実装)
実装のアイデア:
PDF を Excel に変換するには、次の手順を使用できます。
- PDF コンテンツを解析する: まず、Python のサードパーティ ライブラリ ( など) を使用して PDF ファイルのコンテンツを解析する必要があり
PyPDF2
ますpdfminer
。これらのライブラリは、PDF からテキスト、表、その他の要素を抽出できます。 - 表形式データの抽出: PDF に表が含まれている場合は、適切なライブラリとアルゴリズムを使用して表形式データを識別して抽出する必要があります。これには、テーブル境界の検出、セルの結合、テキスト抽出、データ構造化などの操作が含まれる場合があります。
- Excel ファイルの作成:新しい Excel ファイルを作成するか、Python の Excel ライブラリ ( Python など) を使用して
openpyxl
既存の Excel ファイルを開きます。pandas
- データを Excel ファイルに書き込む: PDF から抽出したデータをExcel ファイルの行ごとまたは列ごとにワークシートに書き込みます。
PDF ファイル内の特定のページのデータを Excel ファイルにエクスポートしたい場合は、Python コーディングを使用してそれを実現できます。
下の図は転送される PDF ファイルです。
Python コード:
import tabula
import pandas as pd
def extract_tables_from_pdf(pdf_path, excel_path):
# 读取PDF文件中的所有表格
tables = tabula.read_pdf(pdf_path, pages='all', multiple_tables=True)
# 创建一个Excel写入器
writer = pd.ExcelWriter(excel_path)
# 将每个表格合并到一个数据框中
merged_table = pd.concat(tables, ignore_index=True)
# 将合并的表格写入Excel文件中的一个工作表
merged_table.to_excel(writer, sheet_name='All Tables', index=False)
# 保存Excel文件
writer.close()
# 调用函数提取表格并保存到Excel文件
pdf_file = 'input.pdf'
excel_file = 'output.xlsx'
extract_tables_from_pdf(pdf_file, excel_file)
上記のコードは、入力ファイル名を実際のファイルに変更するだけです。
変換結果
変換が成功しました! !!
タブラライブラリとは何ですか?
Tabulaは、PDF ファイルから表形式のデータを抽出するためのライブラリです。主に、PDF 内の表形式データを CSV や Excel ファイルなどの使用可能な形式に変換するために使用されます。Tabula は、財務諸表、技術文書、その他の表を多用する文書など、構造化された表形式データを含む PDF ファイルの処理に特に適しています。Tabula の主な機能の一部を次に示します。
- 精度: Tabula は、PDF 内の表形式データを正確に識別して抽出できます。
- ユーザーフレンドリー: Tabula は、ユーザーが抽出するデータ領域を選択できるユーザーフレンドリーなインターフェイスを提供します。
- フォーマット保存: 元のテーブルのフォーマットとレイアウトを可能な限り維持します。
- マルチプラットフォームのサポート: Tabula は Windows、Mac、Linux オペレーティング システムで利用できます。
- プログラミング インターフェイス: Tabula はグラフィカル インターフェイスを提供しますが、プログラミング インターフェイス (API) を通じて Python などのさまざまなプログラミング環境でも使用できます。
- オープンソース: Tabula はオープンソース プロジェクトであり、ユーザーはソース コードを表示し、必要に応じて変更できます。
Tabula の主な制限は、PDF ファイルに対して比較的高いフォーマット要件があることです。表データ形式が標準化されていない場合、または表が他のテキスト要素と混在している場合、Tabula の抽出効果は理想的ではない可能性があります。さらに、Tabula は、段落テキストや画像などの非表形式のデータの抽出には適していません。
Python で Tabula を使用するには、通常、tabula-py
Tabula の Python ラッパーであるライブラリをインストールする必要があります。このライブラリを使用すると、PDF ファイルから表形式のデータを Python スクリプトで直接抽出できます。
abula-py` ライブラリ、Tabula の Python ラッパー。このライブラリを使用すると、PDF ファイルから表形式のデータを Python スクリプトで直接抽出できます。