28 用Python给PDF文件批量加密解密

小朋友们好,大朋友们好!
我是猫妹,一名爱上Python编程的小学生 。
欢迎和猫妹一起,趣味学Python 。
今日主题
pikepdf是一个用于读写PDF文件的第三方Python库 , 如何用pikepdf快速给PDF文件加密和解密 。


加密
我们平时看到的PDF文件,多数都是可以直接打开的 。
偶尔也会遇到一些PDF文件,需要输入密码才可以打开,不知道密码的话就无法打开 。
类似这样:

28 用Python给PDF文件批量加密解密



这些文件是怎么加密的?
是否可以用pikepdf给没有密码的PDF文件加上密码?
可以的 。
加密代码:
#coding:utf-8import osimport pikepdfdef unlock(file):pdf = pikepdf.open(file)print((file))pdf.save(file[:-5] '_encrypt.pdf', encryption=pikepdf.Encryption(owner="password", user="password", R=4))pdf.close()if __name__ == '__main__':documents = os.listdir()#当前目录下所有文件print(documents)for file in documents:if os.path.splitext(file)[1] == '.pdf':#判断文件后缀名unlock(file)


解密
对于我们不知道密码的PDF文件,想要暴力破解,很难,效率极低 。
如果知道密码,可每次打开都输入密码,是否是很麻烦?
是否可以修改下PDF文件,移除其密码,让其可以直接打开?
可以的 。
#coding:utf-8import osimport pikepdfdef unlock(file):pdf = pikepdf.open(file,password='password')print((file))pdf.save(file[:-5] '_no_encrypt.pdf')pdf.close()if __name__ == '__main__':documents = os.listdir()#当前目录下所有文件print(documents)for file in documents:if os.path.splitext(file)[1] == '.pdf':#判断文件后缀名unlock(file)


28 用Python给PDF文件批量加密解密

好了 , 我们今天就学到这里吧!
如果遇到什么问题,咱们多多交流,共同解决 。
【28 用Python给PDF文件批量加密解密】我是猫妹,咱们下次见!

相关经验推荐