PyPDF2を使ってPythonでPDFを操作する
PyPDF2を使うと、てPythonでPDFの内容を確認したり、保存が行えます。
インストール
PDFの読み取り
PdfReader Class
を使って、読み込んだPDFファイルを操作します。
ページ数を取得する
指定ページのテキストを抽出する
getPage()
でページオブジェクトを取得し、ページのテキストを抽出します。getPage()
のパラメータは0
から始まるページインデックスです。
全ページを走査する
ループを使って、各ページオブジェクトを取得できます。
サンプル
アノテーション情報の取得
ページ内にアノテーション情報(注釈)がある場合、page["/Annots"]
でアノテーション情報を参照できます。
アノテーションの要素数はlen(page["/Annots"])
で取得できます。
アノテーション情報の削除
page.pop("/Annots")
でアノテーション情報を削除できます。戻り値は削除したアノテーション情報です。アノテーション情報が無い場合はエラーになります。
popした値を使う場合は次のようにします。for annot in annots:
だとエラーになります。
PDFの保存
PdfWriter Class
を使って、PDFファイルの保存が行えます。
writer.addPage()
でページオブジェクトを追加し、ファイルに書き出します。パラメータのpage
はPdfReader Class
を使って、既存のPDFファイルから取得します。
この操作により、PDFの分割や結合などが簡単に行えます。
サンプル
PDFファイルの1ページ目だけを別のPDFファイルとして保存するだけのサンプルです。