吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1388|回复: 13
上一主题 下一主题
收起左侧

[经验求助] pdf需要打开密码,有密码本,求一个批量解密的办法或者工具

[复制链接]
跳转到指定楼层
楼主
zxyly 发表于 2024-9-3 16:45 回帖奖励
25吾爱币
某些杂志下载下来是一个pdf文件压缩包,每2页是一个单独的pdf文件,但是打开要密码,压缩包里有密码本,有没有批量去除密码的办法,一个个输入实在太恐怖了,求软件或者办法,
打开效果如图:
仅作参考,实际文件比这大多。

最佳答案

查看完整内容

借助第三方工具使用 powershell 来解决: 理解需求: 批量操作: 对多个PDF文件进行统一的加解密操作。 密码本: 使用提供的文本文件作为密码源。 命令行: 通过命令行的方式实现自动化操作。 推荐工具: qpdf: 一个功能强大的开源PDF处理工具,支持多种平台,包括Windows。 PowerShell: Windows自带的脚本语言,可以方便地调用qpdf并实现自动化。 安装qpdf: 下载: 从qpdf官网下载适合Windows的版本。 安装: 按 ...

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

最佳答案
Yathon 已被选为最佳答案原发帖时间判断方法
借助第三方工具使用 powershell 来解决:

理解需求:

批量操作: 对多个PDF文件进行统一的加解密操作。
密码本: 使用提供的文本文件作为密码源。
命令行: 通过命令行的方式实现自动化操作。
推荐工具:

qpdf: 一个功能强大的开源PDF处理工具,支持多种平台,包括Windows。
PowerShell: Windows自带的脚本语言,可以方便地调用qpdf并实现自动化。
安装qpdf:

下载: 从qpdf官网下载适合Windows的版本。
安装: 按照安装向导完成安装。确保将qpdf的可执行文件路径添加到系统环境变量中,以便在命令行中直接调用。

[PowerShell] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# 设置密码本路径和输出目录
$passwordFile = "passwords.txt"
$outputDirectory = "output_pdfs"
 
# 读取密码本
$passwords = Get-Content $passwordFile
 
# 获取当前目录下的所有PDF文件
$pdfFiles = Get-ChildItem -Filter *.pdf
 
foreach ($pdf in $pdfFiles) {
    # 尝试用每个密码解密
    foreach ($password in $passwords) {
        try {
            qpdf --decrypt "$password" "$pdf.tmp" "$pdf"
            Write-Host "Decrypted $($pdf.Name) with password: $password"
            break
        } catch {
            # 如果解密失败,创建临时文件并继续尝试下一个密码
            $pdf.CopyTo("$pdf.tmp")
        }
    }
 
    # 如果所有密码都尝试失败,则使用第一个密码加密
    if (Test-Path "$pdf.tmp") {
        qpdf --encrypt "$passwords[0]" "$pdf.tmp" "$pdf"
        Write-Host "Encrypted $($pdf.Name) with password: $($passwords[0])"
        Remove-Item "$pdf.tmp"
    } else {
        Write-Host "Decrypted $($pdf.Name)"
    }
}
3#
lisongmei 发表于 2024-9-3 18:27
这是python单个解密,批量解密就循环一下,供参考(需pip install pycryptodome)。
[Python] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import PyPDF2
 
# 打开加密的 PDF 文件
with open('a.pdf', 'rb') as input_file:
    # 创建 PDF 阅读器对象
    reader = PyPDF2.PdfReader(input_file)
 
    # 解密 PDF 文件
    if reader.is_encrypted:
        reader.decrypt('123456')
 
    # 创建 PDF 写入器对象
    writer = PyPDF2.PdfWriter()
 
    # 将所有页面添加到写入器对象
    for page_num in range(len(reader.pages)):
        writer.add_page(reader.pages[page_num])
 
    # 将无密码的 PDF 文件保存为新的文件
    with open('b.pdf', 'wb') as output_file:
        writer.write(output_file)
 
print("PDF 文件已解密并另存为 b.pdf")
4#
xxkz 发表于 2024-9-3 19:16
找一个pdf解密软件,然后把已知密码作为字典去解密不好么?
5#
zj23308 发表于 2024-9-4 03:35
PDF密码删除  https://www.123pan.com/s/7xBUVv-gwim.html
6#
 楼主| zxyly 发表于 2024-9-4 16:10 |楼主
Yathon 发表于 2024-9-3 18:03
借助第三方工具使用 powershell 来解决:

理解需求:

感谢大佬提供的思路,我都需求确实是这样,确定正确安装了,运行powshell的时候显示:qpdf unknown argument,提供密码本后,所有运行只会载入第一个密码,无法解密,不知道为啥,纯小白。
7#
 楼主| zxyly 发表于 2024-9-4 16:11 |楼主
lisongmei 发表于 2024-9-3 18:27
这是python单个解密,批量解密就循环一下,供参考(需pip install pycryptodome)。
[mw_shl_code=python,tr ...

感谢回复,这个对我上手难度太大,确实搞不定
8#
 楼主| zxyly 发表于 2024-9-4 16:16 |楼主
xxkz 发表于 2024-9-3 19:16
找一个pdf解密软件,然后把已知密码作为字典去解密不好么?

感谢分享思路,确实是一个好的方法,翻遍了论坛和网络在线版,下了不下10个app,只有Advanced PDF Password Recovery 5.06 这个跑字典比较好用,但是可惜的是不能批量操作,还是得一个一个添加来,不知大佬有没有推荐。
9#
 楼主| zxyly 发表于 2024-9-4 16:17 |楼主
zj23308 发表于 2024-9-4 03:35
PDF密码删除  https://www.123pan.com/s/7xBUVv-gwim.html

感谢回复,但这个确实解不了打开密码。
10#
xxkz 发表于 2024-9-4 16:47
zxyly 发表于 2024-9-4 16:16
感谢分享思路,确实是一个好的方法,翻遍了论坛和网络在线版,下了不下10个app,只有Advanced PDF Passwor ...

这个我还真没有,琢磨着用按键精灵之类的软件,把批量重复的操作交给软件看成不成。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-5-28 16:00

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表