rar 配合 python 实现 excel密码保护 破解

基本流程为,将excel 格式 改为rar, 然后用rar软件打开, 将 xl -> worksheet -> sheet*.xml 做下修改, 把sheet*.xml 里面的密码保护字段移除。

 

具体步骤如下:

修改格式为rar, 然后用rar打开,找到 xl -> worksheet 目录,  把所有的sheet.xml 拖拉出来,到一个新的文件夹

把脚本替换文件replace.py  放到此文件夹中,运行

然后在rar中,把所有sheet.xml 删除

然后把,刚刚拖出来,处理过的sheet.xml , 拖进rar里

关闭,rar, 把rar格式修改为之前的excel。

 

# -*- coding:utf-8 -*-
import re,os,io
def alter(file,old_str,new_str):
    with io.open(file, "r", encoding="utf-8") as f1, io.open("%s.bak" % file, "w", encoding="utf-8") as f2:
        for line in f1:
            f2.write(re.sub(old_str,new_str,line))
    os.remove(file)
    os.rename("%s.bak" % file, file)

def getFiles(dir, suffix): # 遍历所有文件
    res = []
    for root, directory, files in os.walk(dir):
        for filename in files:
            name, suf = os.path.splitext(filename)
            if suf == suffix:
                res.append(os.path.join(root, filename))
    return res

for file in getFiles("./", '.xml'):
    alter(file, "<sheetProtection[^<>]*>", "")

 

posted @ 2020-02-27 22:00  upupon  阅读(1707)  评论(0编辑  收藏  举报