配置简单,支持多个密码尝试,完成后移动到新的文件夹,不会和未解密混在一起

csdn点击下载 exe文件

百度网盘:https://pan.baidu.com/s/1XLqEd8Jzu0Q9GEKBfZBKwA 
提取码:xlsx  好使评论给个赞,谢谢   ^_^
备份文件!!!备份文件!!!备份文件!!!

只适用于以下类型加密

使用方法,先建立文件夹,点击运行,会生成

excel需要解除密码的excel

okdir已完成的文件夹

conf.ini配置文件

双击打开配置文件编辑,在password引号内用英文逗号分隔开密码

例子:password='123,456,789',会按照顺序依次尝试

把需要去除面的xls或者xlsx文件放入excel文件夹,再次点击程序,运行完以后等待10秒钟关后关闭窗口,因为excel文件关闭的慢,设置10秒钟后移动到成功文件夹

注意:执行执行完成后静等10秒钟再关闭,excel保存后没那么快关闭,保存完成后延迟10秒钟移动

源代码:

#!/usr/bin/env python3
import configparser
import os
import win32com.client
import turtle
import time
import math
import shutil
import threading
import sched#创建文件夹
def mkdir(path):path = path.strip()path = path.rstrip("\\")isExists = os.path.exists(path)if not isExists:os.makedirs(path)print (path + ' 创建成功')return Trueelse:print (path + ' 目录已存在')return False
def delpwdtry(xcl,filename,pw_str):try:wb = xcl.Workbooks.Open(filename, False, False, None, pw_str)xcl.DisplayAlerts = False# # 保存时可设置访问密码.wb.SaveAs(filename, None, '', '')# 保存文件wb.Save()# 文件保存并关闭wb.Close(SaveChanges=True)xcl.Quit()return Trueexcept:xcl.Quit()return Falsedef makefile(path, content):if os.path.exists(path):returnelse:f = open(path, 'w+')f.write(content)f.seek(0)read = f.readline()f.close()print('excel文件放加密excel  config配置密码 okdir是成功文件夹')os.system('pause')exit(0)
def aaaa(starttime,filename,num,pwds,i,file,xcl):haoshi = round(time.time() - starttime, 2)print((str(i) + "/" + str(num)), haoshi, '秒', file)pwdok = 0i2 = 0for pwd in pwds:i2 = i2 + 1print ((str(i) + "/" + str(num)), '第', i2, "次尝试", pwd)pwd_end = ''boo = delpwdtry(xcl, filename, pwd)if boo:pwdok = 1pwd_end = pwdbreakif pwdok:print ((str(i) + "/" + str(num)), 'ok')# print ('10秒后移动文件')s = threading.Timer(10, movee, (filename,))s.start()else:print ('失败')xcl.Quit()
def movee(filename):shutil.move(filename, './okdir')
def delpwd(okdir,starttime):conf = configparser.ConfigParser()# 指定配置文件路径和编码conf.read('conf.ini', 'utf-8')  # 文件路径# 读取配置信息path = conf.get("Conf", "path")password = conf.get("Conf", "password")pwds = password.split(',')xcl = win32com.client.Dispatch("Excel.Application")# pw_str为打开密码, 若无 访问密码, 则设为 ''xcl.Visible = Falsefilelist = os.listdir(path)num = len(filelist)i = 0for file in filelist:i = i + 1filename = os.path.abspath(os.path.join(path, file))aaaa(starttime,filename,num,pwds,i,file,xcl)starttime = time.time()
endtime = time.time()
okdir = './okdir'
mkdir('./excel')
mkdir(okdir)
makefile('./conf.ini', "[Conf]\npath=./excel/\npassword=mima1,mima2,3...")
delpwd(okdir,starttime)haoshi = round(time.time()-starttime,2)
print("执行完成 耗时",haoshi , "秒")
os.system('pause')

pyinstaller -F 文件名字

excel批量删除密码解除密码保护 可多个密码相关推荐

  1. 总结excel批量删除空格的方法

    内容提要:文章总结excel批量删除空格的常见方法,使用查找替换,以及SUBSTITUTE.TRIM.CLEAN函数来辅助删除空格.对Excel感兴趣的朋友可加Excel学习交流群:284029260 ...

  2. excel批量删除公式保留数据_Excel实用tips(17) – 批量删除隐藏的工作表

    大家可能遇到过这种情况:一个几经易手的远古 Excel 表,文件巨大无比,运行极慢,删除数据和公式也无济于事. 反复查找原因,才发现表格中有好几十个隐藏的 worksheet,这些 worksheet ...

  3. EXCEL批量删除当前目录下所有工作薄的所有工作表的指定行

    本代码示例用于批量删除第6, 7, 9, 10, 12, 13, 15, 16行的代码,使用这个批量删除行的代码要注意以下几点: 1)该代码只用于批量删除代码所在文件目录下(不含子目录)与 " ...

  4. Excel批量删除空行的几种方法

    工作中我们可能要处理一些不规范的数据,比如数据中存在很多空行.今天就给大家分享一下如何批量删除空行. 1.如下图是某老师收到的学生成绩表,在此表格中存在大量无意义空行,现在想要快速批量删除这些无意义空 ...

  5. Excel批量删除含有某关键字的多个工作表

    如图所示想批量删除工作簿中含有某个关键字段的工作表,该如何批量操作呢 (Excel插件) 1.动图演示如下 2.我们可以选择方方格子按钮 ​ 3.选择工作表的的操作 4.下拉菜单选择删除指定表 5.弹 ...

  6. EXCEL批量删除单元格样式

    2019独角兽企业重金招聘Python工程师标准>>> Sub 批量删除单元格样式() EX: For i = 1 To ActiveWorkbook.Styles.Count On ...

  7. excel批量删除空白行(excel下面无限多的空行如何删除)

    Excel是常用的办公软件之一,很多人在使用EXCEL的时候经常会碰到有空行的情况,那么如何一次删除excel中的所有空行呢?这里是需要一些技巧的!下面小编简单说下Excel删除空行的方法与大家分享. ...

  8. Excel批量删除插入的对象的2种方法

    (方方格子插件) 如图不同的位置插入了不同的形状或图片,现在想着批量删除它们,如何操作呢 一. 1.首先选中其中任意一个对象 2.然后按Ctrl+A进行全选 3.然后直接delete键就可以删除了 二 ...

  9. Excel批量删除空白单元格数据左移的2种方法

    (方方格子插件) 如图想将各个产品的库存信息汇总到1列,该如何操作呢 一. 1.选中出标题行列外的数据区域 2.Ctrl+G选择定位条件 3.选择空值按钮 4.Ctrl+减号选择右侧单元格左移的操作 ...

  10. Excel -- 批量删除字符大于某值的单元格

    文章目录 一.场景需求 二.思路 三.操作 3.1 单个单元格键入公式 3.2 批量自动填充公式 3.3 筛选排序 一.场景需求   子域名收集过程中有很多收集的子域数值过大往往是测试间残留的地址,对 ...

最新文章

  1. Speedata uhf_7.6.3.jar错误硬代码问题
  2. 离线轻量级大数据平台Spark之MLib机器学习库朴素贝叶斯实例
  3. linux http用户,HTTP完整请求过程
  4. 堆与优先队列课内模板
  5. 实体与电商不是敌人 体验经济决定远方
  6. 简单类型视图状态应用
  7. TCP-UDP混合使用模式
  8. 24种设计模式与6大原则
  9. Android:android2.3电话接听
  10. 未来计算机体系结构探索,未来计算机体系结构将是什么样的发展趋势
  11. 算法荐书(程序员练功+大众科普)
  12. 物理学家提惊人设想:宇宙大爆炸也许从未发生过
  13. chm格式怎么打开?
  14. Windows常见蓝屏代码及解决方法
  15. x86 单线并发多拨_带宽“单线多拨“倍增大法教程
  16. 蓝绿部署、AB测试、灰度发布、⾦丝雀发布、滚 动发布的概念与区别
  17. Week8学习总结-数据库
  18. open-api-project
  19. 丁小平微积分研究成果刍议(转载)
  20. Linux命令之top命令详解

热门文章

  1. 部署企业级项目管理系统(蝉道)
  2. Unable to boot device due to insufficient system resources
  3. 熬夜人必看—iPhone屏幕亮度设置
  4. html5怎么让表格居中,HTML怎么让表格居中
  5. pycharm个人最喜欢的配色方案
  6. 怎样裁剪PDF文件中的页面
  7. 微信公众号自定义消息模板(处理数据)
  8. 微信小程序 多标签选择和添加标签
  9. 为什么你的ASO效果不好_ASO优化重要吗
  10. Python初学系列——天天向上的力量