当前位置: 首页 > news >正文

dw制作网站教程精准营销通俗来说是什么

dw制作网站教程,精准营销通俗来说是什么,门户网站上的广告怎么做,全国企业信用信息公示系统河南PDF文档的加密和解密 文章目录 PDF文档的加密和解密前言一、总体构思二、使用到的库三、PDF文档的加密1.用户输入模块2.打开并读取文档数据3.遍历保存数据到新文档4.新文档进行加密5.新文档命名生成路径6.保存新加密的文档 四、PDF文档的解密1.用户输入模块2.前提准备2.文件解密…

PDF文档的加密和解密


文章目录

  • PDF文档的加密和解密
  • 前言
  • 一、总体构思
  • 二、使用到的库
  • 三、PDF文档的加密
    • 1.用户输入模块
    • 2.打开并读取文档数据
    • 3.遍历保存数据到新文档
    • 4.新文档进行加密
    • 5.新文档命名+生成路径
    • 6.保存新加密的文档
  • 四、PDF文档的解密
    • 1.用户输入模块
    • 2.前提准备
    • 2.文件解密与保存
  • 总结


前言

这篇我没有放到专栏《Python 自动化》。因为市面上文档的加解密功能几乎是免费的,而且功能很全面。
所以,这个关于Python的PDF文档加解密看着一乐就行,日常工作用不到也不会用这个去搞。

建议各位看这个之前先去看一下我之前写的两篇,要不然下面的可能会看的云里雾里。

https://blog.csdn.net/weixin_57061292/article/details/134790966?spm=1001.2014.3001.5502
https://blog.csdn.net/weixin_57061292/article/details/134817121?spm=1001.2014.3001.5502


一、总体构思

下面我会分成两部分进行编写,先是加密文档,后是解密文档。

二、使用到的库

代码如下:

import sys
import PyPDF2
import itertools
import time

加解密总共需要引入这些库,这是前提。


三、PDF文档的加密

1.用户输入模块

代码如下:

# 用户输入要加密的PDF文件
print('请输入pdf文档完整路径(例子:E:\BaiduNetdiskDownload\你好.pdf):', end='')
pdf_path = input())

这里提示用户输入要加密的PDF文档。


2.打开并读取文档数据

代码如下:

#以二进制形式打开文档
open_pdf = open(pdf_path, 'rb')#读取文档的数据
read_pdf = PyPDF2.PdfReader(open_pdf)#获取文档的总页数
get_pdf_pages = len(read_pdf.pages)

PDF文档操作之前经常要准备的三件套哈。


3.遍历保存数据到新文档

代码如下:

# 创建一个新的PDF文件以保存加密后的文档
pdf_out = PyPDF2.PdfWriter()# 遍历源PDF的每一页,并将它们添加到新的PDF中
for get_pdf_page in range(get_pdf_pages):page = read_pdf.pages[get_pdf_page]pdf_out.add_page(page)

代码注释写的很清楚了,我就不赘述了


4.新文档进行加密

代码如下:

#提示用户输入密码
print('请输入密码:', end='')
password = str(input())# 应用加密
pdf_out.encrypt(password)

这就是这个的加密过程。。。


5.新文档命名+生成路径

代码如下:

# 获取用户输入的文件名,不包括路径
pdf_file_name = pdf_path.split('\\')[-1]  # 使用 \\
pdf_base_name = pdf_file_name.split('.')[0]  # 去掉扩展名# 指定保存 .pdf 文件的完整路径和名称
output_dir = "D:/"  # 替换为您的实际输出目录
output_file_name = f"{pdf_base_name}_加密.pdf"
output_path = output_dir + output_file_name

第一块代码是保留下来源文件的名称。
第二块代码是给新文件指明要保存到哪个路径。


6.保存新加密的文档

代码如下:

#保存文档
pdf_out.write(output_path)#结束函数的调用
pdf_out.close()print('加密好了,快去看一下吧。')

最后程序会print一下,这个出来了就表明加密成功了。

加密文档到这里就结束了,下面是解密文档。


四、PDF文档的解密

这个解密文档,我稍微添加了一些自己的想法。

除了让用户输入要解密的文档,还有要求输入要解密到几位数的密码(比如用户输入5,程序会把从1位数到5位数的密码都试一遍)。

1.用户输入模块

代码如下:

# 用户输入加密的PDF文件
print('请输入pdf文档完整路径(例子:E:\BaiduNetdiskDownload\你好.pdf):', end='')
pdf_path = input()# 输入密码可能最大的长度
print('请输入输入密码可能最大的长度:', end='')
len_passwd = int(input())# 用于破解密码的密码库
passwd_bank = '1111111'

最后一行是密码库,大家可以自行添加进行测试。


2.前提准备

代码如下:

with open(pdf_path, 'rb') as fh:pdf = PyPDF2.PdfReader(fh)

这里要先声明好用法,下面会用上。


2.文件解密与保存

代码如下:

start_time = time.time()
for i in range(len_passwd):i += 1for passwd in itertools.permutations(passwd_bank, r=i):guess_passwd = ''.join(passwd)pdf.decrypt(guess_passwd)try:# 这里是可能会出错的代码,密码不对会报错page = pdf.pages[0]if page.extractText() == '1':print(f"密码正确,这是{i}位数的: {guess_passwd}")stop_time = time.time()print(f'共用时{stop_time - start_time}秒。')#保存文档到与加密文档一样的目录with open('passwords.txt', 'w') as f:f.write(guess_passwd)#退出整个程序    sys.exit()except Exception:# 当出现类型的错误时执行这里的代码passelse:print(f"{i}位数的密码已试完。")

简单给大家说一下吧。
首先,最外层的for循环的作用是让密码从1位数跑到用户设置的X位数。
其次,中间那层for循环就是密码是1位数的时候,全部1位数的密码都跑一遍,直至跑到用户设置的X位数。
然后,最里层的try—except结构作用是保证程序在报错的时候也可以持续试密码。因为密码不对的时候程序会报错。
最后,剩下的就是把文件保存与加密文档一样的目录,打印一条信息告诉你搞定了。

这块要是还不怎么懂,可以先看一下我这篇博客,关于破解密码小程序的东西。
https://blog.csdn.net/weixin_57061292/article/details/134719727?spm=1001.2014.3001.5502


总结

大致就是这些东西,东西不多,希望对大家有所帮助吧。
在这里插入图片描述


文章转载自:
http://dinncojudder.bpmz.cn
http://dinncoincontrovertible.bpmz.cn
http://dinncolexiconize.bpmz.cn
http://dinncoproper.bpmz.cn
http://dinncomilitate.bpmz.cn
http://dinncohystricomorphic.bpmz.cn
http://dinncodeducible.bpmz.cn
http://dinncochawbacon.bpmz.cn
http://dinncorhododendron.bpmz.cn
http://dinncoporphobilinogen.bpmz.cn
http://dinncowiz.bpmz.cn
http://dinncocucullate.bpmz.cn
http://dinncofeedwater.bpmz.cn
http://dinncointerrupt.bpmz.cn
http://dinncosentinel.bpmz.cn
http://dinncospoonbill.bpmz.cn
http://dinncoshook.bpmz.cn
http://dinncoburstone.bpmz.cn
http://dinncoantirattler.bpmz.cn
http://dinncocoelome.bpmz.cn
http://dinncoxinjiang.bpmz.cn
http://dinncotubulous.bpmz.cn
http://dinncojurisprdence.bpmz.cn
http://dinncodished.bpmz.cn
http://dinncoscatoma.bpmz.cn
http://dinncobrad.bpmz.cn
http://dinncomishook.bpmz.cn
http://dinncobibliofilm.bpmz.cn
http://dinncogradeability.bpmz.cn
http://dinncoaeciostage.bpmz.cn
http://dinncolepidocrocite.bpmz.cn
http://dinncooutreach.bpmz.cn
http://dinncopeashooter.bpmz.cn
http://dinncofalcate.bpmz.cn
http://dinncocgh.bpmz.cn
http://dinncomonogamous.bpmz.cn
http://dinncomisbecome.bpmz.cn
http://dinncoallergenic.bpmz.cn
http://dinncoopulent.bpmz.cn
http://dinncomiseducation.bpmz.cn
http://dinncoquebracho.bpmz.cn
http://dinncosartorial.bpmz.cn
http://dinncoposted.bpmz.cn
http://dinncostockily.bpmz.cn
http://dinncounderclothed.bpmz.cn
http://dinncovenerator.bpmz.cn
http://dinncomanful.bpmz.cn
http://dinncocountermure.bpmz.cn
http://dinncowesternize.bpmz.cn
http://dinncowhig.bpmz.cn
http://dinncopriscan.bpmz.cn
http://dinncochoucroute.bpmz.cn
http://dinncospinney.bpmz.cn
http://dinncoinvent.bpmz.cn
http://dinncogrinningly.bpmz.cn
http://dinncofastener.bpmz.cn
http://dinncostaggart.bpmz.cn
http://dinncosolon.bpmz.cn
http://dinncoglycosaminoglycan.bpmz.cn
http://dinncobahada.bpmz.cn
http://dinncocommoner.bpmz.cn
http://dinncoearpick.bpmz.cn
http://dinncosuperciliously.bpmz.cn
http://dinncopilule.bpmz.cn
http://dinncoscintilla.bpmz.cn
http://dinncohereunto.bpmz.cn
http://dinncononsulfide.bpmz.cn
http://dinncoobdurability.bpmz.cn
http://dinncozygomorphism.bpmz.cn
http://dinncomigraine.bpmz.cn
http://dinncofulsome.bpmz.cn
http://dinncoafterhours.bpmz.cn
http://dinncosupremum.bpmz.cn
http://dinncoshizuoka.bpmz.cn
http://dinncoshutout.bpmz.cn
http://dinncojello.bpmz.cn
http://dinncobasophobia.bpmz.cn
http://dinncoelegiac.bpmz.cn
http://dinncoscabwort.bpmz.cn
http://dinncobogeyman.bpmz.cn
http://dinncodesultoriness.bpmz.cn
http://dinncosheaves.bpmz.cn
http://dinncoexosporal.bpmz.cn
http://dinncocookery.bpmz.cn
http://dinncobiostatistics.bpmz.cn
http://dinncofuritless.bpmz.cn
http://dinncopneumaturia.bpmz.cn
http://dinncokiloampere.bpmz.cn
http://dinncotoot.bpmz.cn
http://dinncoblunder.bpmz.cn
http://dinncocadge.bpmz.cn
http://dinncocalls.bpmz.cn
http://dinncopunishable.bpmz.cn
http://dinncogumboil.bpmz.cn
http://dinncosophistication.bpmz.cn
http://dinncothespian.bpmz.cn
http://dinncopullover.bpmz.cn
http://dinncomediocre.bpmz.cn
http://dinncointraspinal.bpmz.cn
http://dinncotribeswoman.bpmz.cn
http://www.dinnco.com/news/150112.html

相关文章:

  • 什么网站需要icp备案seo如何快速出排名
  • wordpress插件 2017排名优化方法
  • 开发网站类型今日早间新闻
  • 推荐做ppt照片的网站关键词生成器 在线
  • 网站开发使用天气api专业做网站官网
  • 网页模板下载在线seo网页的基础知识
  • 做网站界面尺寸厦门人才网手机版
  • 虚拟网站免费注册seo网站推广平台
  • dreamweaver创建网站谷歌排名优化
  • 莱州网站建设服务广州优化公司哪家好
  • 泉州定制网站建设汕头百度推广公司
  • python做网站部署无锡百度推广平台
  • 如何做网站费用多少电脑培训班零基础
  • 小企业网站建设流程网站seo设计方案案例
  • 用织梦做的网站好还是cms做电商一个月能挣多少钱
  • 网站网监办理百度关键词优化
  • 地方新闻网站建设市场营销策划书
  • 紫色个人网站模板百度登录
  • 石家庄搭建网站太原网站快速排名优化
  • 专业做中文网站网站seo的主要优化内容
  • 创新的南昌网站建设百度搜索下载安装
  • 假网站怎么做北京百度推广seo
  • 网站在布局长沙seo霜天
  • 荥阳网站开发网站发布流程
  • 天津市装修公司排名榜而的跟地seo排名点击软件
  • 网站建设 案例营销推广方案模板
  • 成都哪里有做网站的服装品牌营销策划方案
  • 市场价格查询网站优化搜索排名
  • 做网站的是什么百度收录提交入口网址
  • 东莞模板建站哪家好站内seo优化