办公自动化6_批量给pdf文件加密
############## 实例6_批量给pdf文件加密.py ###############
来源网上整理 ,供学习使用。
import PyPDF2 #可从PDF文档提取信息
import os #用于获取需要合并的PDF文件所在路径
path="data/" # 文件夹路径
1.获取需要加密的文件名及路径
files=[]
for file in os.listdir(path):
if file.endswith(".pdf"): #排除文件夹内的其它干扰文件,只获取PDF文件
files.append(path+file)
2.获取每个PDF文件并加密保存
for file in files:
pdf_obj=open(file,'rb')# 以二进制读取,将保留PDF中的所有信息
pdf_reader=PyPDF2.PdfFileReader(pdf_obj)
pdf_writer=PyPDF2.PdfFileWriter()
for page_num in range(pdf_reader.numPages):
page_obj=pdf_reader.getPage(page_num)
pdf_writer.addPage(page_obj)
pdf_writer.encrypt('pass')# 加密,密码设为'pass',可个性化调整
#写入并保存PDF文件
pdf_output_file=open(file.split(".")[0]+"_sec.pdf",'wb') #以二进制写入,将保留源PDF中的所有信息
## 将字符串'data/INV5.pdf'按点号"."分成两部分 file.split(".")
pdf_writer.write(pdf_output_file)
pdf_output_file.close()
files
print("succed")
################## end ########################