logo

Pythonを使用してPDFファイルからテキストを抽出する

皆さんは PDF が何であるかをよく知っているはずです。実際、これらは最も重要で広く使用されているデジタル メディアの 1 つです。 PDF の略 ポータブルドキュメントフォーマット 。それは使用しています .pdf 拡大。ソフトウェア、ハードウェア、オペレーティング システムに依存せず、ドキュメントを確実に提示および交換するために使用されます。

2 つの Python ライブラリを使用して PDF ファイルからテキストを抽出します。 pypdf そして PyMuPDF 、 記事上で。



pypdf ライブラリを使用して PDF ファイルからテキストを抽出します。

Pythonパッケージ pypdf 必要なこと (テキスト抽出) を達成するために使用できますが、必要以上のことを行うこともできます。このパッケージは、PDF ファイルの生成、復号化、結合にも使用できます。 注記: 詳細については、以下を参照してください。 Python で PDF ファイルを操作する

インストール

このパッケージをインストールするには、ターミナルで次のコマンドを入力します。

pip install pypdf>

例: PDF を入力: 抽出-pdf-テキスト-Python



Python3






レカ年齢

# importing required modules> from> pypdf>import> PdfReader> > # creating a pdf reader object> reader>=> PdfReader(>'example.pdf'>)> > # printing number of pages in pdf file> print>(>len>(reader.pages))> > # getting a specific page from the pdf file> page>=> reader.pages[>0>]> > # extracting text from page> text>=> page.extract_text()> print>(text)>

>

>

出力:

抽出-pdf-Python

上記のコードをいくつかの部分に分けて理解してみましょう。

reader = PdfReader('example.pdf')>
  • のオブジェクトを作成しました PDFリーダー からのクラス pypdf モジュール。
  • PDFリーダー クラスは、PDF ファイルへのパスの必須の位置引数を受け取ります。
print(len(reader.pages))>
  • ページ プロパティは次のリストを与えます ページオブジェクト 。したがって、ここでは組み込みの のみ() PDFファイルのページ数を取得するPythonの関数。
page = reader.pages[0]>
  • さて、として リーダーページ のリストです ページオブジェクト 、特定の情報を取得できます ページ ページのインデックスをタップして PDF を開きます。 Pythonのリストではインデックスは0から始まるので、 リーダー.ページ[0] PDF ファイルの最初のページが表示されます。
text = page.extract_text() print(text)>
  • ページオブジェクトには機能があります 抽出テキスト() PDF ページからテキストを抽出します。

PyMuPDF ライブラリを使用して PDF ファイルからテキストを抽出します。

PyMuPDF は、XPS、PDF、CBR、CBZ などのファイル形式をサポートする Python ライブラリです。ただし、今のところ、この記事では PDF (Portable Document Format) ファイルに焦点を当てます。

リストノードJava

インストール

pip install pymupdf pip install fitz>

PDF からテキストを抽出するには、次の手順に従う必要があります。

  1. ライブラリのインポート
  2. 文書を開く
  3. テキストの抽出

注記: ここではsample.pdfを使用しています。 PDF を入手するには、以下のリンクを使用してください。

サンプル.pdf – リンク

1. ライブラリのインポート

Python3




import> fitz>

>

>

2. 文書を開く

Python3


文字列をJSON Javaに変換します



doc>=> fitz.>open>(>'sample.pdf'>)>

>

>

ここでは、というオブジェクトを作成しました。 博士 、ファイル名は Python 文字列である必要があります。

3. テキストの抽出

int を文字列に変換する

Python3




for> page>in> doc:> >text>=> page.get_text()> >print>(text)>

>

>

ここでは、PDF 内のページを反復処理し、 get_text() ファイルから各ページを抽出するメソッド。

テキストを抽出するためのすべてのコード

Python3




import> fitz> doc>=> fitz.>open>(>'sample.pdf'>)> text>=> ''> for> page>in> doc:> >text>+>=>page.get_text()> print>(text)>

>

一年を四半期に分けて
>

出力:

結論

2 つの Python ライブラリを見てきました。 pypdf そして PyMuPDF , PDF ファイルからテキストを抽出できます。上記 2 つのライブラリからお好みのライブラリをコメントしてください。