整理了一下 Pyhton 的 PDF 转 TXT 代码。
目标:将 Data.pdf
文件转为 Data.txt
文件。
# 导入库
import pdfplumber
# 设置文件名
file_name = 'Data'
# 打开 PDF 文件
p = pdfplumber.open(file_name + ".pdf")
# 提取 PDF 页数
page_num = len(p.pages)
# with-open-as 进行 PDF -> TXT
with pdfplumber.open(file_name + ".pdf") as pdf:
for i in range(page_num):
# 设置当前页
page = pdf.pages[i]
# 提取当前页面文本
text = page.extract_text()
# 若 text 不为空值则写入 TXT 文件
if text != None:
# 设置 TXT 文件
f = open(file_name + ".txt", "a", encoding = "utf-8")
# 写入 TXT 文件
f.write(text)
# 打印当前进度
print(file_name+' '+str(i+1)+'/'+str(page_num)+' 页读写完成', end='\r')
# 写入完毕
f.close()
封装函数如下。
# 封装函数
def pdf2txt(file_name):
p = pdfplumber.open(file_name + ".pdf")
page_num = len(p.pages)
with pdfplumber.open(file_name + ".pdf") as pdf:
for i in range(page_num):
page = pdf.pages[i]
text = page.extract_text()
if text != None:
f = open(file_name + ".txt", "a", encoding = "utf-8")
f.write(text)
print(file_name+' '+str(i+1)+'/'+str(page_num)+' 页读写完成', end='\r')
f.close()
# 测试函数
file_name = 'Data'
pdf2txt(file_name)
# Data 32/143 页读写完成