前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用Python玩转PDF | 批量加密文件

用Python玩转PDF | 批量加密文件

作者头像
TalkPython
发布2022-11-21 13:29:07
5170
发布2022-11-21 13:29:07
举报
文章被收录于专栏:TalkPython

数字化时代,网络安全、数据安全对于企业和个人来说,都至关重要。为文件加密、添加水印等,都是保障安全的手段。关于添加水印之前有分享过,今天分享另外一种保障安全的方法,使用Python程序实现PDF文件加密。加密后的文件,打开的时候,需要输入正确的密码,才可以看到文件内容。具体程序如下:

代码语言:javascript
复制
from pathlib import Path
from PyPDF2 import PdfFileReader, PdfFileWriter

def encrypt_pdf(src,secret='TalkPython'):
    in_dir = Path(src)
    all_pdf_file = list(in_dir.glob('*.pdf'))

    for pdf in all_pdf_file:
        pdf_file_reader = PdfFileReader(str(pdf))
        pdf_file_writer = PdfFileWriter()
        pages = pdf_file_reader.getNumPages()

        for page in range(pages):
            pdf_file_writer.addPage(pdf_file_reader.getPage(page))
        
        # 为文件加密,默认密码:TalkPython
        pdf_file_writer.encrypt(secret)
        encrypt_pdf_filename = f'{pdf.stem}_secret.pdf'
        out_file = in_dir / encrypt_pdf_filename
        with open(out_file, 'wb') as f:
            pdf_file_writer.write(f)

加密程序,需要两个参数,一个为PDF文件所在目录,一个为加密密码,这里程序默认密码为TalkPython。使用者在使用时,按照自己的需求,输入不同的参数即可。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-08-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 TalkPython 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档