PythonでPDFをテキストに変換
- PyPDF2 を使用して Python で PDF をテキストに変換する
- Aspose を使用して Python で PDF をテキストに変換する
- PDFminer を使用して Python で PDF をテキストに変換する
- まとめ
Python フレームワークは、アプリケーションを構築するためだけのものではありません。 Python を使用して、PDF ドキュメントを .txt
ファイルに変換できます。
PDF ファイルをテキストに変換すると、ページの内容が編集可能になります。これは、PDF ファイルでは不可能なことです。 PDF をテキストに変換するために使用できるさまざまなライブラリがあります。 いくつか試してみましょう。
PyPDF2 を使用して Python で PDF をテキストに変換する
最初に取り組む方法は、PyPDF2 ライブラリです。 ターミナル内で pip install PyPDF2
を使用してインストールします。
それが完了したら、新しいファイルを作成し、new.py
という名前を付けます。 次に、ファイルに移動してこれらのコードを入力します。
コード スニペット - new.py
:
import PyPDF2
pdfFileObj = open(r"C:\Users\HP\Desktop\BOOKS\Ching.pdf", "rb")
pdfReader = PyPDF2.PdfFileReader(pdfFileObj)
print(pdfReader.numPages)
pageObj = pdfReader.getPage(0)
print(pageObj.extractText())
pdfFileObj.close()
このコードを実行したら、しばらくお待ちください。 ターミナル内にプレーン テキストが表示され、それをコピーして Word 文書またはメモ帳内に貼り付けることができます。
出力:
Aspose を使用して Python で PDF をテキストに変換する
Python 用の Aspose PDF からテキストへのコンバーターは、PyPDF2 よりも短いコード スニペットを提供しますが、同様に効率的です。 また、ターミナル内でテキスト コンテンツを生成する最初の例とは異なり、Aspose はテキストを .txt
ファイルに作成します。
pip install aspose-words
を使用して、ターミナルから Aspose をインストールします。 インストール後、コードを格納する新しいファイルを作成し、これらのスニペットを挿入します。
コード スニペット - new.py
:
import aspose.words as aw
doc = aw.Document(r"C:\Users\HP\Desktop\BOOKS\Ching.pdf")
doc.save(r"C:\Users\HP\Desktop\BOOKS\text\doc.txt")
Aspose をインポートしたら、テキストに変換するファイルのパスを宣言します。 次に、doc.save
内で .txt
ファイルの宛先パスを宣言します。
出力:
PDFminer を使用して Python で PDF をテキストに変換する
最後に、PDFminer を使用して PDF からテキストを抽出します。 PDFminer は PyPDF よりも多くのテキストを抽出し、必要なコードが少ないことがわかります。
ターミナル内でpip install pdfminer.six
と入力して PDFminer をインストールします。 インストール後、新しい Python ファイルを作成し、new.py
または任意の名前を付けて、これらのコードを入力します。
from pdfminer.high_level import extract_text
text = extract_text(r"C:\Users\HP\Desktop\BOOKS\Ching.pdf")
print(repr(text))
しばらくすると、端末内にテキストが表示されます。 次に、そこからドキュメントにコピーできます。
出力:
まとめ
私たちのほとんどは通常、オンラインで PDF ファイルをテキストに変換したいと思っていますが、Python でこれができることを発見したことで、オンラインに接続するストレスが軽減され、Web 上で機密データが漏洩するリスクに対処するのにも役立ちます.
Fisayo is a tech expert and enthusiast who loves to solve problems, seek new challenges and aim to spread the knowledge of what she has learned across the globe.
LinkedIn