Python拆分PDF为单页时的问题
工作需要将一个7页的PDF文档拆分,要求每一页保存成一个PDF文件,根据现在的PyPDF2说明,使用了下述代码:
#coding=utf8
import os
from PyPDF2 import PdfReader, PdfWriter
def pdf_split(filename,filepath,save_path):
reader=PdfReader(filepath)
writer=PdfWriter()
p=len(reader.pages)
print(p)
for q in range(0,p):
reader=PdfReader(filepath)
writer.add_page(reader.pages[q])
save_dir_path=os.path.join(save_path,filename+str(q)+'.pdf')
with open(save_dir_path,'wb') as out:
writer.write(out)
writer.close()
pdf_split('past-split','D:\工作相关\TEST\\化学反应总结-7.pdf','D:\工作相关\TEST')
现在发现,能输出7个拆分后的PDF文件,但是只有第一份是正确的,也就是只有第一页,随后生成的每份PDF都在前一份的基础上增加了后一页(也就是第二份PDF有2页,第三份有3页,以此类推)。
所以上面的代码问题出在哪里了?我个人理解应该是和add_page有关,PdfWriter.add_page后面是不是应该执行某个语句将之前已输出完成的page清除,这样才能保证后续输出的PDF文档不会一直增加页数?但是这种功能怎样实现?应该如何修改才能实现将PDF拆分成单页的效果?谢谢各位不吝赐教!