夜雨聆风学习资料网

ARTICLE · 1252642

PDF 解密工具 —— 使用与打包 使用说明

PDF 解密工具 —— 使用与打包 使用说明

PDF 解密工具 —— 使用与打包说明

一、快速使用(推荐)

进入项目目录,直接双击运行已生成的独立程序:

dist\PDF_Decryptor.exe

该 exe 已包含 Python、tkinter 与 pypdf,无需再安装 Python 即可运行。


二、从源码运行

适合需要二次开发或调试的场景。

环境要求

  • Python 3.9 及以上

  • Windows(其他系统需自行测试)

步骤

# 安装依赖
pip install -r requirements.txt

# 运行
python app.py

或者双击 启动.bat,脚本会自动创建虚拟环境并安装依赖。


三、界面与功能说明

1. 选择 PDF 文件

  • 支持“添加文件”与“添加文件夹(递归)”。

  • 表格中会显示文件名、所在目录、状态、命中的密码。

2. 解密方式

模式用法
已知密码输入正确密码,多个密码用英文逗号 , 分隔,会依次尝试
字典破解选择 txt 字典(每行一个密码);可勾选“同时尝试内置常用密码”
暴力破解选择字符集 + 长度范围;如记得部分密码,可填写前缀/后缀缩小范围
  • 暴力破解默认开启“多核加速”,候选密码较多时会自动使用多进程。

  • 单选按钮已改用原生控件,选中状态更清晰。

3. 输出设置

  • “输出目录”留空:解密后的文件保存在源 PDF 同目录。

  • 解密后文件名自动加上 _已解密.pdf,不会覆盖原文件。

4. 日志与进度

  • 进度条 + 已尝试次数 + 速度(次/秒)+ 预计剩余时间。

  • 可随时点击“停止”中止任务。


四、性能参考

PDF 密码校验本身较慢(单核约 140 次/秒)。暴力破解时建议先用字典 + 前缀/后缀缩小范围:

场景参考耗时(多核 32 核)
4 位纯数字约 7 秒
6 位纯数字数分钟
8 位及以上通常不现实,请换用字典或已知密码

五、重新打包成 exe

如果需要修改源码后重新生成 exe,双击运行:

build_exe.bat

或在命令行执行:

python -m pip install --upgrade pyinstaller
python -m PyInstaller --noconfirm--onefile--windowed--clean ^
--name"PDF_Decryptor" ^
--hidden-import pypdf ^
    app.py

打包完成后,新的 exe 位于:

dist\PDF_Decryptor.exe

--onefile 表示生成单个 exe 文件;--windowed 表示不显示黑色控制台窗口。


破解成功后的情况

六、注意事项

  1. 仅用于合法用途:请只对自己拥有合法权利的 PDF 文档使用本工具。

  2. 杀毒软件误报:PyInstaller 打包的单文件 exe 有时会被部分杀毒软件误报,如不信任可自行从源码运行。

  3. 路径含中文:当前已支持中文路径;若打包后在特殊环境下出现乱码,请确保系统区域设置为 UTF-8。

  4. 多核模式:首次启动多进程时会有短暂加载延迟,随后速度显著提升。


七、项目文件一览

pdf解密/
├── app.py                # 主程序源码
├── make_icon.py          # 生成软件图标(icon.ico / icon.png)
├── icon.ico              # 程序图标
├── requirements.txt      # Python 依赖
├── 启动.bat              # 一键从源码运行
├── build_exe.bat         # 一键打包 exe(已含图标)
├── README.md             # 项目简介
├── 使用与打包说明.md      # 本文件
└── dist/
    └── PDF_Decryptor.exe # 独立可执行程序(已带图标)

自定义图标

  • 图标由 make_icon.py 用 Pillow 程序化绘制(蓝色渐变圆角底 + 文档 + 开锁挂锁)。

  • 重新生成图标:python make_icon.py

  • 修改图标后,重新运行 build_exe.bat 打包,exe 与窗口标题栏都会显示新图标。

相关学习资料