您的位置:首页 > 编程语言 > Python开发

Python30行代码实现对pdf文字内容的提取

2019-03-02 21:36 901 查看

             网上有各种软件处理pdf,但是这些软件在处理pdf的效果上并不是尽如人意,本人利用Python的一个库

PyPDF2实现了对pdf文字内容的提取,至于图片提取日后再说,废话不多说,直接上代码:
from PyPDF2 import PdfFileReader

# 定义获取pdf内容的方法
def getPdfContent(filename):
# 获取PdfFileReader对象
pdf = PdfFileReader(open(filename, "rb"))
content = ""  #content是输出文本
for i in range(0,pdf.getNumPages()): #遍历每一页
pageObj = pdf.getPage(i)
try:
extractedText = pageObj.extractText()#导出每一页的内容,如果当前页有图片的话就跳过
content += extractedText + "\n"
except BaseException:
pass
return content.encode("ascii", "ignore")

# 将获取的内容写入txt文件
with open("test.txt","w") as f:
count=0 #count的作用是限制每一行的文字个数,本人设置的是十行
#将获取的文本变成字符串并用空白隔开
for item in str(getPdfContent("test.pdf")).split(" "):
# 如果当前文字以句号结尾就换行
if item[-1]==".":
f.write(item+"\n")
count=0
else:
f.write(item+" ")
count +=1
# 如果写了十个字就换行
if count==10:
f.write("\n")
# 重置count
count = 0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: