Python对excel文件批量加密(GUI选择)
在实际工作中,遇到了大量excel文件需要加密,以防止check,于是就网上搜集了一些教程,自己简单写了一个
# -*- coding: utf-8 -*-
# --author:valecalida--
from tkinter import filedialog, simpledialog, Tk
from win32com.client import Dispatch
from os import listdir
from time import sleepdef encrypto_excel(old_filename, new_filename, tmp_passwd, passwd_str=''):excel_tmp = Dispatch("Excel.Application")wb = excel_tmp.Workbooks.Open(old_filename, False, False, None, passwd_str)excel_tmp.DisplayAlerts = Falsewb.SaveAs(new_filename, None, tmp_passwd, '')wb.Close()excel_tmp.Quit()def get_file_path(data_dir):filename_sets = listdir(data_dir)filename = []for file_name in filename_sets:file_name_split = file_name.split('.')if file_name_split[-1] == 'xlsx' or file_name_split[-1] == 'xls':filename.append(file_name)return filenamedef main():root = Tk()root.withdraw()# filetypes=(("Excel files", "*.xlsx"),("Excel files", ".xls"))source_folder = filedialog.askdirectory(title='请选择要加密文件所在文件夹') + '/'file_list = get_file_path(source_folder)excel_tmp_passwd = simpledialog.askstring(title='密码设置', prompt='请输入想要设置的密码:')output_folder = filedialog.askdirectory(title='请选择输出另存的文件夹') + '/'for f_name in file_list:print("[*] " + f_name + ' 开始加密啦~')try:s_f = (source_folder + f_name).replace("/", "\\")# print(s_f)o_f = (output_folder + f_name).replace("/", "\\")# print(o_f)encrypto_excel(s_f, o_f, excel_tmp_passwd)print("[+] " + f_name + " 加密完成了,请注意查看哟~")except Exception as e:print(str(e) + f_name + '加密失败了,请手动设置')if __name__ == '__main__':main()sleep(3)
这里主要是三个功能点:
- 使用tkinter选择输入输出文件夹,输入自己想要设置的密码
- 遍历选择的源文件夹,然后将所有的excel文件获取到
- 利用for循环对每个excel文件进行加密
当然也有一点问题,这个只能加密没有密码的excel文件,如果有密码的话就会提示加密失败,后续再优化吧,下面是运行界面,输入文件夹路径
密码输入框
输出文件夹选择
2022.11.26更新最新版打包exe文件,见:https://download.csdn.net/download/valecalida/87166485
Python对excel文件批量加密(GUI选择)相关推荐
- python 判断excel文件是否被加密
# 环境: win10/mac皆可,python 3.7import pandas as pd import os import xlrd fpath = r'/Users/.../test.xlsx ...
- 【收藏】Python利用Excel+模板批量生成word文件
Python利用Excel+模板批量生成word文件 最近帮朋友批量生成小区业主物业费未缴的律师函.朋友那有物业那边的表格数据,包括楼栋-房间号.业主姓名.欠费日期.欠款金额等信息.目的是需要将这些表 ...
- 使用Python获取Excel文件中单元格公式的计算结果
假设有如下Excel文件,其中第二个WorkSheet中数据如下: 其中D列为公式,现在要求输出该列公式计算的数值结果,代码如下: 代码运行结果: ----------相关阅读---------- 1 ...
- Python操作Excel文件:插入一列数据
问题描述:已有Excel文件,其中包含5列数据,要求在第3列前插入一列数据,保存为新文件. 参考代码: 运行结果: --------董付国老师Python系列教材-------- 1)<Pyth ...
- python实现Excel文件读取的程序(附源代码)
python实现Excel文件读取的程序 前一段时间帮一个朋友用python写了一个读Excel程序操作的程序,具体要求为:读取两个Excel文件,根据其中某个特征的特征值对这两个文件进行取交集操 ...
- 详解Python操作Excel文件
前言 本篇文章主要总结了一下利用python操作Excel文件的第三方库和方法. 常见库简介 1.xlrd xlrd是一个从Excel文件读取数据和格式化信息的库,支持.xls以及.xlsx文件. 地 ...
- 用Python处理Excel文件
用Python读写Excel文件 四种python处理excel模块PK 我主要尝试了四种工具,在此并不会给出他们的排名,因为在不同的应用场景下,做出的选择会不同. XlsxWriter xlrd ...
- Excel 文件怎么批量插入首页、扉页、尾页?怎么将某个 Excel 文件批量插入到其它 Excel 文件的指定位置?
概要:在我们日常办公中,经常会碰到需要给一批 Excel 文件批量插入首页或者尾页,或者在指定的位置插入新的 Sheet 的需求.「我的ABC软件工具箱」就实现了批量在指定位置插入新的内容的功能,可以 ...
- 微信小程序 -- 数据库数据excel文件批量导入
一.excel文件批量导入数据到数据库 1.创建node.js函数upload,点击upload右键外部终端中安装类库 npm install node-xlsx 2.云函数代码 const clou ...
最新文章
- 我与我的专业计算机作文500字,我的好朋友——电脑
- 邢波出任全球第一所AI大学校长,履历横跨三门学科
- Android手机刷recovery
- 项目4---罗列并解释阿里云服务的存储产品
- fmdb和mysql的区别_FMDB
- Python实现给指定的微信朋友发信息
- Integer中1000==1000为false而100==100为true
- 迁移应用程序到.NET Framework 4.5:弃用类型与新特性
- 旁边一位员工天天跟别人聊天,主管都不敢管,那你当什么主管
- npm安装项目所有依赖包
- Debian 系统找不到基本命令的解决方法
- zipFile 压缩文件夹 C#
- Docker 基础之Dockerfile命令详解
- go结构体初始化_浅谈golang结构体偷懒初始化
- Redis Desktop Manager 黑屏
- 高阻态是0还是1_FPGA/ASIC笔试面试题集锦(1)知识点高频复现练习题
- 超链接一般有两种表现形式_网站内链分为哪几种?内链的七种表现形式
- C1模拟试卷的一个算法题
- vue-baidu-api地图标记点(自定义标记图标),设置标记点的优先级
- 深入理解Mysql事务ACID特性以及事务隔离级别
热门文章
- HRBU_20211112训练
- Vue创建app及App挂载和渲染
- 魔芋粉的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- w ndows7调亮度快捷键,Windows7电脑亮度怎么调?
- 齿坯基准面径向和端面圆跳动公差(μm)
- 405错误,java.io.IOException: The temporary upload location [/tmp/tomcat.22.83/work/Tomcat/localhos解决办法
- 计算机二级word家长回执单得分,全国计算机国家二级office课件_word第一次课.doc...
- python写小程序后台——学习(小白)
- Ubuntu系统显示实时网速信息
- [竞赛01]2021CCF BDCI新闻摘要自动生成Baseline-T5模型