Python中通过PyPDF2实现PDF加密[通俗易懂]

Python中通过PyPDF2实现PDF加密[通俗易懂]场景PyPDF2是一个纯pythonPDF库,能够分割、合并、裁剪和转换PDF文件的页面。它还可以向PDF文件中添加自定义数据、查看选项和密码。它可以从PDF检索文本和元数据,还可以将整个文件合并在一起。PyPDF21.26.0文档:https://pythonhosted.org/PyPDF2/实现使用pip安装pypddf2新建文件夹jiamiPDF新…

大家好,又见面了,我是你们的朋友全栈君。

场景

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

PyPDF 2 1.26.0文档:

https://pythonhosted.org/PyPDF2/

实现

使用pip 安装pypddf2

Python中通过PyPDF2实现PDF加密[通俗易懂]Python中通过PyPDF2实现PDF加密[通俗易懂]

新建文件夹jiamiPDF

新建加密前的PDF

Python中通过PyPDF2实现PDF加密[通俗易懂]Python中通过PyPDF2实现PDF加密[通俗易懂]

新建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加密[通俗易懂]Python中通过PyPDF2实现PDF加密[通俗易懂]

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

Python中通过PyPDF2实现PDF加密[通俗易懂]Python中通过PyPDF2实现PDF加密[通俗易懂]

输错密码后:

Python中通过PyPDF2实现PDF加密[通俗易懂]Python中通过PyPDF2实现PDF加密[通俗易懂]

 

资源以及文件下载

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/152380.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月23日 下午12:16
下一篇 2022年6月23日 下午12:36


相关推荐

  • js form表单提交(jsp form表单提交方式)

    url为你要提交的地址params为你提交的参数functionfromPost(URL,PARAMS){vartemp=document.createElement(“form”);temp.action=URL;temp.method=”pos…

    2022年4月14日
    112
  • python创建一个简单的游戏

    python创建一个简单的游戏等你来撩 我用 python 写了个简单的游戏

    2026年3月16日
    3
  • 新手到黑客的最全入门路径图(附全部学习资料下载)!

    新手到黑客的最全入门路径图(附全部学习资料下载)!点击上方“程序人生”,选择“置顶公众号”第一时间关注程序猿(媛)身边的故事01入门介绍说到黑客,大家可能觉得很神秘,其实狭义上的黑客就是去寻找网站、系统、软件等漏洞,刚入门的黑客大部分从事渗透工作,而渗透大部分属于web安全方向,就是利用漏洞来取得一些数据或达到控制,让对方程序崩溃等效果。02一些常用的名词解释挖洞的话,就相当于在程序中查找漏洞,举一个不大恰当但容易理解的比喻,就像韩非子说所的那个

    2022年6月11日
    40
  • 分类问题-决策树模型

    分类问题-决策树模型决策树分类模型决策树是一种简单高效并且具有强解释性的模型 广泛应用于数据分析领域 其本质是一颗自上而下的由多个判断节点组成的树决策树示例预测小明今天是否会出门打球决策树与 if then 规则决策树可以看作一个 if then 规则的集合由决策树的根节点到叶节点的每一条路径 构建一条规则 路径上内部节点的特征对应着规则的条件 condition 叶节点对应规则的结论决策树的 if then 规则集合有一个重要性质 互斥并且完备 这就是说 每个实例都被一条规则 一条路径 所覆盖 并且

    2026年3月26日
    2
  • Ubuntu10.04 下安装RabbitVCS

    Ubuntu10.04 下安装RabbitVCS安装RabbitVCS的方法步骤如下:1、sudoadd-apt-repositoryppa:rabbitvcs/ppa#将rabbitvcs的添加到源里面。(次操作会提示是否要添加到源里面,点击ENTER添加,ctrl+c不添加)2、sudoapt-keyadv–keyserverkeyserver.ubuntu.com–recv-keys34EF…

    2022年7月18日
    12
  • 在Python中关系运算符中,表示“不等于”(python的逻辑运算符)

    python不等于运算符PythonnotequaloperatorreturnsTrueiftwovariablesareofsametypeandhavedifferentvalues,ifthevaluesaresamethenitreturnsFalse.如果两个变量具有相同的类型并且具有不同的值,则Python不等于运算符将返回Tru…

    2022年4月18日
    193

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号