deepl翻译的PDF文档保护密码解除

1、首先将后缀名(.docx)修改为压缩包格式(.zip)。

2、修改解密word加密.py里zip的位置,和新生成的zip的位置和名称

import zipfile
import xml.etree.ElementTree as ET
import os
import shutil# 定义文件路径
zip_file_path = r'C:\Users\Administrator\Desktop\新建文件夹 (3)\小说 en.zip'
new_zip_file_path = r'C:\Users\Administrator\Desktop\新建文件夹 (3)\小说 en_modified.zip'
xml_file_path_in_zip = 'word/settings.xml'# 创建临时目录
temp_dir = 'temp_zip'
os.makedirs(temp_dir, exist_ok=True)# 打开 ZIP 文件
with zipfile.ZipFile(zip_file_path, 'r') as zip_ref:# 解压缩所有文件到临时目录zip_ref.extractall(temp_dir)# 构建完整的 XML 文件路径
xml_file_full_path = os.path.join(temp_dir, xml_file_path_in_zip)# 解析 XML 文件,并指定命名空间
tree = ET.parse(xml_file_full_path)
root = tree.getroot()# 定义命名空间
namespace = {'w': 'http://schemas.openxmlformats.org/wordprocessingml/2006/main'}# 查找并修改 w:documentProtection 元素的 w:enforcement 属性
document_protection = root.find('.//w:documentProtection', namespace)
if document_protection is not None:if '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}enforcement' in document_protection.attrib:document_protection.attrib['{http://schemas.openxmlformats.org/wordprocessingml/2006/main}enforcement'] = 'false'# 将修改后的 XML 文件保存回临时目录
tree.write(xml_file_full_path, encoding='utf-8', xml_declaration=True, default_namespace='http://schemas.openxmlformats.org/wordprocessingml/2006/main')# 创建新的 ZIP 文件
with zipfile.ZipFile(new_zip_file_path, 'w', zipfile.ZIP_DEFLATED) as new_zip_ref:for foldername, subfolders, filenames in os.walk(temp_dir):for filename in filenames:file_path = os.path.join(foldername, filename)arcname = os.path.relpath(file_path, temp_dir)new_zip_ref.write(file_path, arcname)# 清理临时目录
shutil.rmtree(temp_dir)print(f'修改后的 ZIP 文件已保存到: {new_zip_file_path}')

3、运行解密word加密.py

4、将新生成的zip后缀改回.docx

5、打开.docx看是否已经解除密码保护了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/33437.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

React的生命周期函数详解

import React,{Component} from "react";import SonApp from ./sonAppclass App extends Component{state{hobby:爱吃很多好吃的}// 是否要更新数据,这里返回true才会更新数据shouldComponentUpdate(nextProps,nextState){console.log("app.js第一步…

【计算机视觉】人脸算法之图像处理基础知识(六)

图像直方图 图像直方图是描述图像中像素强度分布的一种统计图表,它是图像处理和计算机视觉领域中一个非常基础且重要的概念。图像直方图通常用于分析图像的亮度、对比度特性,以及在图像增强、阈值分割、特征提取等多种图像处理任务。 import cv2 impor…

【C++】二叉搜索树|Key模型|key_value模型|基本操作

目录 ​编辑 二叉搜索树的定义,创建(Key模型) 定义 创建 基本操作 插入 查找 删除 Key模型和Key_Value模型 二叉搜索树(Key_Value模型) 定义 创建 基本操作 插入 应用 二叉搜索树的定义,创建&…

第二十九篇——交叉验证:电信诈骗为什么能成功?

目录 一、背景介绍二、思路&方案三、过程1.思维导图2.文章中经典的句子理解3.学习之后对于投资市场的理解4.通过这篇文章结合我知道的东西我能想到什么? 四、总结五、升华 一、背景介绍 具体的应用中,让我理解了交叉验证的重要意义,他也…

【Altium】查找PCB上未连接的网络

【更多软件使用问题请点击亿道电子官方网站】 1、文档目标: PCB设计后期检查中找出没有连接的网络 应用场景:PCB设计后期,需要检查是否所有网络都已连接布线。虽然未连接的网络会有飞线显示,但是由于布线后期整板布线密度较高&…

【加密与解密】【05】数据加密知识体系

常用加密算法 包括加密算法的分类,加密算法的作用,加密算法的优缺点,加密算法应用场景 加密算法实践 包括Java加密套件使用方式,BouncyCastle的CommonsCodec的使用 常见概念 公钥,私钥,对称秘钥&#xff…

如何优雅的删库跑路?

本文已收录于:https://github.com/danmuking/all-in-one(持续更新) 前言 哈喽,大家好,我是 DanMu。鲁迅说过:一个程序员成熟的标志是一次优雅是删库。(鲁迅:这bi话我可没说过&#x…

LeetCode刷题之HOT100之排序链表

2024/6/24 周末两天没去实验室,可能跟天气有关,也可能跟我不想去有关。最近实在太热,不想出门。早上来,去二楼看了一下我的栀子花,长得很好,但是花苞都没了,只剩下唯一一颗,给它浇了…

vue3滚动日历选择器

倒叙日历&#xff1a; <template><div class"date-picker"><div class"column" wheel"onYearScroll"><div v-for"(year, index) in displayedYears" :key"index" :class"{current: year current…

Ubuntu下载QT5.8安装包-bestswinger课程

最近在看UP的QT开发课&#xff0c;真的找了巨久这个安装包&#xff0c;谁都不想在安装上花太多时间。。出一版小小教程吧&#xff5e; 首先打开qt download官网&#xff0c;5.8好像在镜像网站上没有看到&#xff0c;所以我最后还是老老实实官网了&#xff0c;而且5.8会小一点 …

Linux 运维 | 4.从零开始,文件目录特殊权限管理实践

[ 知识是人生的灯塔&#xff0c;只有不断学习&#xff0c;才能照亮前行的道路 ] 0x00 前言简述 描述&#xff1a;前一章&#xff0c;学习了Linux系统中的用户与用户组的管理&#xff0c;此章节我们将继续学习Linux系统中比较基础且重要的文件权限设置与属性管理&#xff0c;在L…

Kubernetes面试攻略:揭秘企业最爱问的几个问题-必看!下

1. 什么是存储类&#xff08;Storage Class&#xff09;&#xff1f; 答&#xff1a;存储类&#xff08;Storage Class&#xff09;是用于动态配置存储卷的资源对象&#xff0c;它定义了存储卷的类型、存储提供商&#xff08;如 AWS EBS、GCE PD&#xff09;、以及卷配置参数。…

解锁流量密码:这些软文新闻稿发布平台值得一试

随着互联网技术的飞速发展&#xff0c;软文新闻作为一种有效的品牌传播和营销推广手段&#xff0c;越来越受到企业和个人的重视。而新闻稿发布平台也已成为企业、机构和个人传递信息、展示形象的重要渠道。所以选择一个合适的软文新闻稿发布平台&#xff0c;则成为实现信息快速…

日牵物流装备受邀盛装亮相2024长三角快递物流供应链与技术装备展览会(杭州)

日牵物流装备受邀盛装亮相2024长三角快递物流供应链与技术装备展览会&#xff0c;为物流节省每一个铜板&#xff0c;3C馆A21与您相约&#xff01; 日牵物流装备始建于1995年&#xff0c;总部坐落于辽宁省大连市&#xff0c;是一家集科研开发、生产制造、销售服务于一体的现代化…

【数据结构与算法 经典例题】使用栈实现队列(图文详解)

&#x1f493; 博客主页&#xff1a;倔强的石头的CSDN主页 &#x1f4dd;Gitee主页&#xff1a;倔强的石头的gitee主页 ⏩ 文章专栏&#xff1a;《数据结构与算法 经典例题》C语言 期待您的关注 目录 ​​一、问题描述 二、前置知识 三、解题思路 原理&#xff1a; 图解&…

警惕!马斯克深度伪造视频引发的加密货币骗局泛滥

近期&#xff0c;一场以埃隆马斯克形象为幌子的深度伪造视频骗局在网络世界掀起了轩然大波&#xff0c;给广大网民带来了巨大的困扰和潜在的经济损失。 据可靠消息&#xff0c;埃隆・马斯克的深度伪造视频在 YouTube 直播平台上频繁出现&#xff0c;成为了不法分子实施加密货币…

大型语言模型(LLM)和多模态大型语言模型(MLLM)的越狱攻击

随着大型语言模型&#xff08;LLMs&#xff09;的快速发展&#xff0c;它们在各种任务上表现出了卓越的性能&#xff0c;有效地遵循指令以满足多样化的用户需求。然而&#xff0c;随着这些模型遵循指令的能力不断提升&#xff0c;它们也越来越成为对抗性攻击的目标&#xff0c;…

【大数据】Hadoop学习笔记

基本概念 Hadoop组成 HDFS: Hadoop分布式文件存储系统, 在Haddop中处于底层/核心地位YARN: 分布式通用的集群资源管理系统和任务调度平台, 支撑各种计算引擎执行MapReduce: 第一代分布式计算引擎, 但因为部分原因, 许多企业都不直接使用MapReduce, 但许多底层软件仍然在使用Ma…

2024.06.12校招 实习 内推 面经

绿*泡*泡VX&#xff1a; neituijunsir 交流*裙 &#xff0c;内推/实习/校招汇总表格 1、校招 | 歌尔2025届精英/计划全球启动&#xff01; 校招 | 歌尔2025届精英计划全球启动&#xff01; 2、校招 | 麦风科技2025届校园招聘活动火热开启&#xff01; 校招 | 麦风科技2025…