PythonでPDFファイルをExcelファイルに変換する方法を解説
Pythonには、さまざまな処理に対応できる豊富なライブラリが用意されています。本記事では、その中でもPDFファイルをExcelファイルに変換する方法について詳しく解説します。
PythonでPDFをCSV形式に変換できるパッケージは複数存在しますが、ここではTabula-pyモジュールを使用します。Tabula-pyの主要部分はJavaで書かれており、PDFドキュメントを読み込み、PythonのDataFrameとして取得したり、JSONオブジェクトに変換したりすることができます。
事前準備:Javaのインストール
Tabula-pyを使用する前に、システムにJavaが事前にインストールされている必要がある点に注意してください。Javaが未インストールの場合は、公式サイトからダウンロードしてインストールしておきましょう。
PDFをExcel(CSV)に変換する手順
以下の手順に従って、PDFファイルをExcel(CSV)ファイルへ変換します。
ステップ1: コマンドシェルで pip install tabula-py を実行し、必要なパッケージをインストールします。
ステップ2: read_pdf("ファイルの場所", pages=ページ番号) 関数を使ってPDFファイルを読み込みます。この関数はDataFrameを返します。
ステップ3: tabula.convert_into('pdfファイル名', '保存するファイル名.csv', output_format="csv", pages="all") を使って、DataFrameをExcel(CSV)ファイルに変換します。これにより、PDFファイルの内容がExcelファイルとしてエクスポートされます。
実装例
それでは、実際のコード例を見てみましょう。この例では、IPL試合スケジュールのPDFドキュメントをExcelファイルに変換します。
# 必要なモジュールをインポート
import tabula
# PDFファイルを読み込む
df = tabula.read_pdf("IPLmatch.pdf", pages='all')[0]
# PDFをCSVに変換
tabula.convert_into("IPLmatch.pdf", "iplmatch.csv", output_format="csv", pages='all')
print(df)実行結果
上記のコードを実行すると、PDFファイルがExcel(CSV)ファイルに変換されます。コンソールには読み込んだテーブルデータがDataFrameとして表示され、同時に「iplmatch.csv」というファイルが生成されます。

まとめ
Tabula-pyを使えば、わずか数行のコードでPDF内の表データをExcel(CSV)形式に簡単に変換できます。業務でPDFの表データを頻繁に扱う方にとって、作業の自動化に役立つ便利なライブラリです。pages="all"を指定すれば全ページを対象にできますし、特定のページだけを抽出することも可能なので、ぜひ活用してみてください。
-
Word・ExcelファイルをPDFに変換する簡単な方法【保存手順を解説】
はじめにMS WordやMS Excelで作成した既存のファイルをPDF形式に変換するのは難しいと感じている方は少なくありません。そのため、変換専用のウェブサイトを利用する人も多いようです。しかし、実はわざわざ外部サイトを使う必要はありません。WordにもExcelにも、アプリケーション自体に「PDFとして保存」する機能が標準で搭載されているからです。筆者も学生時代にWordからPDFへの変換作業を頻繁に行っていましたが、この機能のおかげで作業が格段に楽になりました。ぜひ参考にしてください。Word文書をPDFとして保存する方法まず、PDF形式に変換したい文書を開きます。ここではMS Word
-
ExcelファイルをPDFに変換する4つの方法|初心者向けに手順を徹底解説
データや数値を日常的に扱うお仕事をされている方なら、Microsoft ExcelやGoogleスプレッドシートをお使いのことでしょう。しかし、Excelファイルを誰かと共有する前に、必ずPDFに変換してから送るのがベストプラクティスであることをご存じでしょうか? この記事では、ExcelファイルをPDFに変換する具体的な方法をご紹介します。まずは、なぜExcelシートをPDFに変換すべきなのか、その理由から見ていきましょう。 ExcelをPDFに変換すべき理由 PDF化することでExcelシートが保護され、編集できなくなります。受け取った相手が書式や数式を勝手に変更したり、データを改ざんし