Python中通过PyPDF2实现PDF加密

场景

PyPDF 2是一个纯python PDF库,能够分割、合并、裁剪和转换PDF文件的页面。它还可以向PDF文件中添加自定义数据、查看选项和密码。它可以从PDF检索文本和元数据,还可以将整个文件合并在一起。

PyPDF 2 1.26.0文档:

https://pythonhosted.org/PyPDF2/

实现

使用pip 安装pypddf2

Python中通过PyPDF2实现PDF加密_第1张图片

新建文件夹jiamiPDF

新建加密前的PDF

Python中通过PyPDF2实现PDF加密_第2张图片

新建jiamiPDF.py

from PyPDF2 import PdfFileWriter, PdfFileReader

def add_encryption(input_pdf, output_pdf, password):
    pdf_writer = PdfFileWriter()
    pdf_reader = PdfFileReader(input_pdf)

    for page in range(pdf_reader.getNumPages()):
        pdf_writer.addPage(pdf_reader.getPage(page))

    pdf_writer.encrypt(user_pwd=password, owner_pwd=None,
                       use_128bit=True)

    with open(output_pdf, 'wb') as fh:
        pdf_writer.write(fh)

if __name__ == '__main__':
    add_encryption(input_pdf='badao.pdf',
                 output_pdf='badadoencrypted.pdf',
                 password='badao')

 

其中input_pdf='badao.pdf'是要加密的pdf。

output_pdf='badadoencrypted.pdf'是加密后要输出的pdf。

password='badao'是设置的密码。

运行效果:

Python中通过PyPDF2实现PDF加密_第3张图片


此时会在目录下生成加密后的PDF文件,打开后

Python中通过PyPDF2实现PDF加密_第4张图片

输错密码后:

Python中通过PyPDF2实现PDF加密_第5张图片

 

资源以及文件下载

https://download.csdn.net/download/badao_liumang_qizhi/11146656

你可能感兴趣的:(Python)