\

PythonでPDFを読み込む方法はいくつかありますが、ここでは主に3つのライブラリ、PyMuPDFPyPDF2PDFminerについて紹介します。

PyMuPDF

PyMuPDFは、PDFを読み込んでテキストを抽出するためのライブラリです。日本語のテキスト抽出や画像抽出に対応しています。

# ライブラリ設定
import fitz

# PDFを読み込む
filename = 'sample.pdf'
doc = fitz.open(filename)

# 1ページずつテキストを抽出して出力
for page in range(len(doc)):
    text = doc[page].get_text()
    print(text)

PyPDF2

PyPDF2は、PDFのファイル操作(結合や分割など)に便利なライブラリです。ただし、日本語のテキスト抽出には対応していません。

# ライブラリ設定
import PyPDF2

# PDFを読み込む
filename = 'sample.pdf'
reader = PyPDF2.PdfFileReader(filename)

# テキストを抽出する
for page in range(reader.numPages):
    text = reader.getPage(page).extractText()
    print(text)

PDFminer

PDFminerもPDFからテキストを抽出するライブラリで、日本語に対応しています。ただし、コードが長くなる傾向があります。

# ライブラリ設定
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from io import StringIO

# PDFを読み込む
filename = 'sample.pdf'
pdf = open(filename, 'rb')

# テキスト抽出のための準備
outpdf = StringIO()
rmgr = PDFResourceManager()
lprms = LAParams()
device = TextConverter(rmgr, outpdf, laparams=lprms)
iprtr = PDFPageInterpreter(rmgr, device)

# ページを読み込む
for page in PDFPage.get_pages(pdf):
    iprtr.process_page(page)

# テキストを抽出して出力
text = outpdf.getvalue()
print(text)

以上、PythonでPDFを読み込むための3つのライブラリについて紹介しました。それぞれのライブラリには特徴があり、用途に応じて適切なものを選ぶことが重要です。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です