ホームページ >バックエンド開発 >Python チュートリアル >NLP 用 Python: 複数の表を含む PDF テキストを処理するには?
NLP 用 Python: 複数の表を含む PDF テキストを処理するには?
要約:
自然言語処理 (NLP) の分野では、複数の表を含む PDF テキストを処理することが一般的な課題です。この記事では、Python で PDF 処理ライブラリと表処理ライブラリを使用して、複数の表を含む PDF テキストデータを抽出して加工する方法を紹介します。
はじめに:
ビッグデータ時代の到来により、PDF 形式で表示されるテキスト データがますます増えています。これらのテキスト データの中でも、テーブルは多くの有用な情報を含む一般的な構造です。ただし、PDF形式の表は固定構造のスプレッドシートではなく、自由なレイアウトを採用しているため、表データを抽出・加工するには特殊な技術が必要です。
解決策:
Python は、PDF テキストを処理するための豊富なサードパーティ ライブラリを備えた強力なプログラミング言語です。次の例では、PyPDF2 ライブラリと tabula-py ライブラリを使用して、複数の表を含む PDF テキストを処理する方法を示します。
ステップ 1: 必要なライブラリをインストールする
まず、PyPDF2 ライブラリと tabula-py ライブラリをインストールする必要があります。コマンド ラインで次のコマンドを実行して、これら 2 つのライブラリをインストールします。
pip install PyPDF2 pip install tabula-py
ステップ 2: 必要なライブラリをインポートします。
必要なライブラリをインポートします。
import PyPDF2 import tabula
ステップ 3: PDF ファイルを読み取ります。
PyPDF2 ライブラリを使用して PDF ファイルを読み取る:
def read_pdf(filename): with open(filename, 'rb') as file: pdfReader = PyPDF2.PdfFileReader(file) num_pages = pdfReader.numPages text = "" for page in range(num_pages): pageObj = pdfReader.getPage(page) text += pageObj.extractText() return text
ステップ 4: PDF テキストを処理する
tabula-py ライブラリを使用して PDF テキストを処理し、表データを抽出する:
def extract_tables_from_pdf(filename): tables = tabula.read_pdf(filename, pages='all', multiple_tables=True) return tables
ステップ 5 : コードをテストします
コードをテストし、テーブル データを抽出して出力します:
if __name__ == "__main__": pdf_filename = "example.pdf" # 读取PDF文件 text = read_pdf(pdf_filename) print("提取的文本:") print(text) # 提取表格数据 tables = extract_tables_from_pdf(pdf_filename) print("提取的表格数据:") for table in tables: print(table)
概要:
Python で PyPDF2 ライブラリと tabula-py ライブラリを使用することで、PDF を簡単に処理できます複数のテーブルを含むテキスト。まず、PyPDF2 ライブラリを使用して PDF ファイルを読み取り、テキスト データを抽出します。次に、tabula-py ライブラリを使用して、表形式のデータを抽出して処理します。これらの手順を通じて、PDF テキスト内の表を実用的なデータに効果的に変換し、後続の自然言語処理タスクを容易にすることができます。この記事が、複数の表を含む PDF テキストを処理する際に役立つことを願っています。
以上がNLP 用 Python: 複数の表を含む PDF テキストを処理するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。