見出し画像

PythonでPDFのテキストを出力してみる001

IPAにて公開されている情報セキュリティマネジメント試験があります。試験の問題の公開はありがたいのですが不満もあります。問題と解答が別々のPDFのため、毎回PDFをわけて確認しなければいけないなどです。

Pythonで出力したらいいんじゃない?

PDFファイルを全部選択をしてテキストに保存するとか、外部のソフトを使ってワードデータに変換など方法はありますが、正直面倒だなと・・・
ふと考えた結果、Pythonで出力できのかな?となりました

Python環境

今回のPythonの環境は以下のようになります

python --version
Python 3.10.7

使用ツール

pypdfium2

となります。

pypdfium2って何?

元々PDFiumというライブラリがあったのですが、Googleに買収されてオープンソース化したみたいです。GoogleはPDFiumというのを独自に管理しているみたいです。

pypdfium2は、Googleの提供するPDFiumのPythonバインディングというものらしいです。

よくわからないですがとりあえずコードを書いていきます。

インストール

まずはPythonにpypdfium2をインストールします。

pip install -U pypdfium2

Pythonの場合はpipでインストールするのが楽だと個人的には思っています。

コード

コードは以下の通りになります

import sys
import pypdfium2 as pdfium

pdf = pdfium.PdfDocument('2024r06_sg_qs.pdf')

for page in pdf:
    textpage = page.get_textpage()
    text = textpage.get_text_range()
    print(text)

これをするとpdfの出力結果がでます。
とりあえず今回はこんな感じでよいかなと思ってます。
実行するときは

python ファイル名.py

としてください

まとめ

今回はPDFから出力をしました。このままではテキスト保存などができないので、毎回出力するか、コピーしてテキストエディタに貼り付けしないと行けません。次回はテキストファイルに保存できるようにしたいと思います。

この記事が気に入ったらサポートをしてみませんか?