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 파일에서 텍스트를 추출하는 샘플 코드입니다. 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
rrreee
PdfFileReader
개체를 만듭니다. 그런 다음 getNumPages
메서드를 사용하여 PDF의 총 페이지 수를 가져오고 추출된 텍스트를 저장하기 위해 빈 문자열 text
를 만듭니다. 다음으로 getPage
메소드를 사용하여 각 페이지의 텍스트를 추출하고 이를 text
문자열에 추가합니다. 마지막으로 PDF 파일을 닫고 추출된 텍스트를 반환합니다.
3단계: 정규식을 사용하여 키워드 일치
rrreee
위의 코드 예에서는re.findall
함수를 사용하여 텍스트에서 특정 키워드와 일치하는 모든 인스턴스를 찾습니다. 단어 경계를 나타내려면
를 사용하고 대소문자를 무시하려면 flags=re.IGNORECASE
를 사용하세요. 발견된 일치 결과를 목록에 저장하고 일치된 키워드와 해당 일치 항목 수를 반환합니다. sample_pdf.pdf
라는 PDF 파일에서 텍스트를 추출하고 NLP
및 Python
과 같은 특정 키워드가 포함된 부분을 일치시키는 방법을 보여주는 샘플 코드입니다. 코드>. extract_text_from_pdf
함수를 사용하여 PDF에서 텍스트를 추출하고 그 결과를 text
라는 변수에 저장합니다. 다음으로 match_keywords
함수를 사용하여 키워드를 일치시키고 matches
라는 변수에 결과를 저장합니다. 마지막으로 일치
목록을 반복하고 각 키워드와 PDF 텍스트의 발생 횟수를 인쇄합니다. 위 내용은 NLP용 Python: 특정 키워드가 포함된 PDF 텍스트를 처리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!