用 Python 提取 PDF 文本的简单方法
PDF(Portable Document Format)是一种常见的文档格式,用于以固定格式保存文本和图像。在处理 PDF 文件时,有时需要从中提取文本信息以进行进一步的处理或分析。本文将介绍使用 Python 提取 PDF 文本的简单方法。
安装依赖库
在开始之前,我们需要安装 PyPDF2 这个 Python 库来处理 PDF 文件。可以通过以下命令进行安装:
pip install PyPDF2
加载 PDF 文件
首先,我们需要加载要提取文本的 PDF 文件。可以使用 PyPDF2 库的 open 方法来打开一个 PDF 文件。
import PyPDF2
# 打开 PDF 文件
with open('example.pdf', 'rb') as file:
pdf = PyPDF2.PdfFileReader(file)
在上面的代码中,我们打开了名为 "example.pdf" 的 PDF 文件,并使用 rb 模式以二进制形式读取该文件。
提取 PDF 中的文本
接下来,我们可以使用 PyPDF2 库的 getNumPages() 方法获取 PDF 文件的总页数,并使用 getPage() 方法获取每一页的文本内容。
# 获取 PDF 文件总页数
num_pages = pdf.getNumPages()
# 提取每一页的文本内容
for page in range(num_pages):
page_obj = pdf.getPage(page)
text = page_obj.extractText()
print(f"Page {page+1}: {text}")
在上面的代码中,我们使用 range() 函数遍历每一页,并使用 extractText() 方法提取文本内容。最后,我们打印出每一页的文本内容。
保存提取的文本
如果我们希望将提取的文本保存到一个文件中,可以使用 Python 的文件操作来实现。
with open('extracted_text.txt', 'w') as file:
for page in range(num_pages):
page_obj = pdf.getPage(page)
text = page_obj.extractText()
file.write(f"Page {page+1}:\n{text}\n\n")
在上面的代码中,我们打开一个名为 "extracted_text.txt" 的文件,并使用 w 模式以写入的形式操作该文件。然后,我们将每一页的文本内容写入文件中,以每一页为单位。
总结
本文介绍了使用 Python 提取 PDF 文本的简单方法。首先,我们安装了 PyPDF2 库作为依赖库。然后,我们打开 PDF 文件并获取其总页数,然后逐页提取文本内容。最后,我们可以选择将提取的文本保存到一个文件中。
借助 Python 和 PyPDF2 库,我们可以轻松地提取 PDF 文本以便进一步处理或分析。