ホームページ >バックエンド開発 >Python チュートリアル >NLP 用 Python: 特定のキーワードを含む PDF テキストを処理するには?
NLP 用 Python: 特定のキーワードを含む PDF テキストを処理するにはどうすればよいですか?
要約: 自然言語処理 (NLP) は、人工知能分野の重要な研究分野です。この記事では、Python 言語を使用して、特定のキーワードを含む PDF テキストを処理する方法を紹介します。記事には、PDF からテキストを抽出するコード例、キーワード照合に正規表現を使用するコード例、PDF 処理に Python ライブラリを使用する方法が含まれます。
はじめに:
PDF (Portable Document Format) は、さまざまなドキュメントの読み取り、共有、印刷に広く使用されている一般的な電子ファイル形式です。 NLP では、PDF テキストの処理、特に多数の PDF ドキュメントから重要な情報の抽出が一般的なタスクです。この記事では、Python を使用して PDF テキストを処理する方法と、PDF ドキュメント内のテキスト データを解析してキーワード マッチングを実行する方法を紹介します。
ステップ 1: 依存ライブラリをインストールする
始める前に、必要な依存ライブラリがインストールされていることを確認してください。この記事のコード例では、次の Python ライブラリを使用します:
次のコマンドを使用してこれらのライブラリをインストールできます:
pip install PyPDF2
ステップ 2: PDF テキストの抽出
まず、PyPDF2 ライブラリを使用して PDF ドキュメントからテキストを抽出する必要があります。以下は、sample_pdf.pdf
という名前の PDF ファイルからテキストを抽出するサンプル コードです。
import PyPDF2 def extract_text_from_pdf(pdf_filename): pdf_file = open(pdf_filename, 'rb') pdf_reader = PyPDF2.PdfFileReader(pdf_file) num_pages = pdf_reader.numPages text = '' for page in range(num_pages): page_obj = pdf_reader.getPage(page) text += page_obj.extractText() pdf_file.close() return text
上記のコード例では、まず PDF ファイルを開いて PdfFileReader
オブジェクトを作成します。次に、getNumPages
メソッドを使用して PDF の総ページ数を取得し、抽出されたテキストを保存するための空の文字列 text
を作成します。次に、getPage
メソッドを使用して各ページのテキストを抽出し、それを text
文字列に追加します。最後に、PDF ファイルを閉じて、抽出されたテキストを返します。
ステップ 3: 正規表現を使用してキーワードを一致させる
PDF テキストを抽出したら、Python の正規表現モジュール (re) を使用してキーワードを一致させることができます。以下は、正規表現を使用して、特定のキーワードを含むテキストの部分を照合するサンプル コードです。
import re def match_keywords(text, keywords): keyword_matches = [] for keyword in keywords: matches = re.findall(r'' + keyword + r'', text, flags=re.IGNORECASE) keyword_matches.append((keyword, len(matches))) return keyword_matches
上記のコード例では、re.findall
関数を使用して、テキスト内の特定のキーワードに一致するすべてのインスタンスを検索します。単語の境界を表すには
を使用し、大文字と小文字を無視するには flags=re.IGNORECASE
を使用します。見つかった一致結果をリストに保存し、一致したキーワードとそれに対応する一致数を返します。
ステップ 4: PDF テキスト処理に適用する
PDF からテキストを抽出し、キーワードを照合する関数を定義したので、それらを PDF テキスト処理タスクに適用できます。以下は、sample_pdf.pdf
という名前の PDF ファイルからテキストを抽出し、NLP
や Python
などの特定のキーワードを含む部分を照合する方法を示すサンプル コードです。
pdf_filename = 'sample_pdf.pdf' keywords = ['NLP', 'Python'] text = extract_text_from_pdf(pdf_filename) matches = match_keywords(text, keywords) for keyword, count in matches: print(f'关键词 "{keyword}" 在PDF中出现了 {count} 次.')
上記のコード例では、まず処理対象の PDF ファイルのファイル名を指定し、特定のキーワードを含むキーワード リストを定義します。次に、extract_text_from_pdf
関数を使用して PDF からテキストを抽出し、結果を text
という変数に保存します。次に、match_keywords
関数を使用してキーワードを照合し、結果を matches
という変数に保存します。最後に、matches
リストをループし、PDF テキスト内の各キーワードとその出現数を出力します。
結論:
この記事では、Python を使用して特定のキーワードを含む PDF テキストを処理する方法を紹介します。 PyPDF2 ライブラリを使用して PDF からテキストを抽出し、正規表現を使用してキーワードを照合することで、これを実現する方法を示します。これらの手法は、大量の PDF ドキュメントから有用な情報を抽出するなど、さまざまな NLP タスクに使用できます。
参考文献:
以上がNLP 用 Python: 特定のキーワードを含む PDF テキストを処理するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。