【Python応用】PDFファイルから文字抽出する方法-まとめ-

Python

PDFファイルから文字抽出する方法として、「pypdf」「pdfminer.six」があります。

そこで、ここでは「pypdf」「pdfminer.six」の使用方法について解説しています。

この記事の対象

  • 「pypdf」の使用方法について知りたい方
  • 「pdfminer.six」の使用方法について知りたい方
  • PDFから簡単に文字抽出をしたい方
スポンサーリンク
スポンサーリンク

英文抽出 ⇒ pypdf

英文を抽出するなら「pypdf」で可能です。外部ライブラリのためpipでインストールしておく必要があります。以下を実行して下さい。

$ pip install pypdf

pypdf使用例

from pypdf import PdfReader

reader = PdfReader("arxiv_test.pdf")
for i in reader.pages:
    page = i
    print(page.extract_text())

上記のプログラムは任意のPDFファイルのすべてのページを読込んで出力しています。使用したPDFはarXivになります。使用したPDFはこちらです。

【結果】

指定ページだけ抽出

from pypdf import PdfReader

reader = PdfReader("arxiv_test.pdf")
page = reader.pages[0]
print(page.extract_text())

上記のプログラムは任意のPDFファイルの1ページ目を読込んで出力しています。ページを指定する場合は「.pages[]」を使用することで可能です。

結果は省略します。

日本語抽出 ⇒ pdfminer.six

pdfminer.six」は日本語の抽出ができるライブラリになります。こちらも外部ライブラリのため、以下の様にインストールしておく必要があります。

$ pip install pdfminer.six

pdfminer.six使用例

from pdfminer.high_level import extract_text

text = extract_text("nikon.pdf")
print(text)

上記のプログラムは任意の日本語が含まれているPDFファイルを読み込んで出力しています。

使用しているPDFファイルはNikonのIR資料になります。使用したPDFはこちらです。

【結果】

指定ページだけ抽出

from pdfminer.high_level import extract_text

text = extract_text(pdf_file="nikon.pdf",page_numbers=[1])
print(text)

指定ページだけを抽出した場合は引数に「page_numbers」を指定するだけです。

結果は省略します。

タイトルとURLをコピーしました