当前位置: 首页 > wzjs >正文

微网站开发平台 开源wordpress获取文章所有标签

微网站开发平台 开源,wordpress获取文章所有标签,客户网站留言,动画设计培训学校排名摘要 本文将分享一款基于Python的Excel数据净化工具,用于自动清除给定的Excel文档中指定工作表中的不可见字符、批注、单元格样式等冗余数据。脚本支持进度可视化展示,保留核心数据处理逻辑的同时确保文件格式规整,特别适用于需要规范数据格…

摘要

本文将分享一款基于Python的Excel数据净化工具,用于自动清除给定的Excel文档中指定工作表中的不可见字符、批注、单元格样式等冗余数据。脚本支持进度可视化展示,保留核心数据处理逻辑的同时确保文件格式规整,特别适用于需要规范数据格式的企业级应用场景。


架构流程图

异常处理
可视化组件
核心处理模块
存在
不存在
循环处理
完成所有行
输出错误信息
更新进度条
清理条件格式
清除不可见字符
移除批注
重置字体样式
清除填充颜色
用户输入
输入参数
加载Excel文件
工作表存在性检查
初始化清理
逐行处理单元格
保存新文件

工具脚本源码

import openpyxl
from openpyxl.styles import NamedStyle, Font, Border
from openpyxl.formatting import Rule
import re
from tqdm import tqdm  # 新增进度条库
from openpyxl.styles import PatternFilldef clean_invisible_chars(text):"""清除字符串中的不可见字符"""if not isinstance(text, str):return text# 清除控制字符(ASCII 0-31,除了\t\n\r)return re.sub(r'[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]', '', text)def clear_all_and_save(input_file, output_file, sheet_name):"""清除工作表中的:1. 不可见字符2. 批注3. 单元格样式"""# 已清理的列表cleared_set = set()# 加载工作簿wb = openpyxl.load_workbook(input_file)# 创建无样式对象no_style = NamedStyle(name="Normal")# 创建无填充对象no_fill = PatternFill(fill_type=None)# 检查工作表是否存在if sheet_name not in wb.sheetnames:print(f"错误: 工作表 '{sheet_name}' 不存在。")print(f"可用工作表列表: {', '.join(wb.sheetnames)}")return# 获取工作表ws = wb[sheet_name]# 获取总行数用于进度条total_rows = ws.max_rowfirst_init = True# 使用tqdm显示进度条for row in tqdm(ws.iter_rows(), total=total_rows, desc="处理进度"):if first_init == True:print(f"初始化完成,开始清理数据...")# 彻底清除所有条件格式和样式ws.conditional_formatting = []cleared_set.add('条件格式填充色')# cleared_set.add('单元格默认样式')print(f"✔ 已彻底清理 工作表:{sheet_name} 的所有样式设置, 开始单元格处理...")first_init = Falsefor cell in row:# 彻底清除单元格所有样式cell.fill = PatternFill(fill_type=None)cell.font = Font(name='Calibri', size=11, bold=False, italic=False)cell.border = Border()cell.number_format = 'General'# 清除不可见字符if cell.value and isinstance(cell.value, str):cell.value = clean_invisible_chars(cell.value)cleared_set.add('不可见字符')# 清除批注if cell.comment:cell.comment = Nonecleared_set.add('批注')# 清除样式cell.style = no_stylecleared_set.add('单元格样式')# 清除单元格填充颜色if cell.fill:cell.fill = no_fillcleared_set.add('单元格填充色')# 保存工作簿到新的文件wb.save(output_file)# cleared_text = ", ".join(cleared_set)cleared_text = "\n".join(f"  ✔ 清除-{item}" for item in cleared_set)# print(f"已清理[{cleared_text}],并保存到 {output_file}")print("已完成:\n"+cleared_text+f"\n并保存到 {output_file}")# 使用示例
input_excel_file = r'测试-脱敏结果.xlsx'  # 输入Excel文件路径
output_excel_file = r'清除样式_测试-脱敏结果.xlsx'  # 输出Excel文件路径
sheet_to_clean = 'PB' # 'Sheet1'  # 要清理的工作表名称print(f"初始化中...")
print(f"输入文件: {input_excel_file}")
print(f"输出文件: {output_excel_file}")
print(f"目标工作表: {sheet_to_clean}")
try:clear_all_and_save(input_excel_file, output_excel_file, sheet_to_clean)
except Exception as e:print(f"处理过程中发生错误: {str(e)}")

功能特性说明

1. 三重数据净化

  • 隐形字符清除:正则表达式过滤ASCII 0-31控制字符
  • 格式重置:统一字体、边框、填充样式为默认值
  • 元数据清理:移除单元格批注及条件格式

2. 可视化进度提示

采用tqdm库实现:

  • 实时处理进度条
  • 预估剩余时间
  • 已完成项目统计

3. 安全防护机制

  • 工作表存在性校验
  • 异常捕获与友好提示
  • 输出文件独立保存

典型应用场景

  1. 数据迁移前的格式标准化
  2. 第三方数据接入清洗
  3. 报表自动化生成预处理
  4. 敏感信息脱敏后处理
http://www.dtcms.com/wzjs/823159.html

相关文章:

  • 国家有规定必须做可信网站验证深汕特别合作区人口
  • 制作网站用什么代码万网域名管理登录
  • 响应式网站建设方案外汇平台 网站开发
  • 一次性筷子网站建设网页美工设计教案网页元素设计
  • 质量好网站建设商家科技网站制作
  • 宁波三盛网络网站建设黄页网址大全
  • 汽车之家网站是谁做的网站建建设
  • 南昌做网站的公司哪里好wordpress个人展示
  • 网站建设图片怎么动win2003 做网站服务器
  • 网站建设 意识形态小黄猫传媒有限公司官方首页
  • 网站建设 百度百科关于做网站的调查问卷
  • 网站开发用python吗急招室内设计师
  • 如何用php做网站管理系统营销型网站设计的内容
  • 网络违法犯罪举报网站深圳制作网站建设的企业
  • 商城网站开发的完整流程如何做电商新手入门
  • 网站友链邢台网站制作平台
  • 内江建设局网站画册设计网站推荐
  • 网站 拉新西安网页设计培训班
  • 站长之家网站模板中国新闻社简介
  • 上海模板网站辽宁城乡建设部网站首页
  • 建行官方网站首页沈阳手机网站
  • 网站建设主要业务流程设定优秀的网站有哪些内容
  • 牡丹江百度推广百度seo优化方法
  • 永久免费建站空间photoshop手机版
  • 网站开发费用多少网络营销论坛有哪些
  • 建设银行网站打不井网站建设mrd文档模板
  • 容桂手机网站建设现在还有企业做网站吗
  • 外国人可以在中国做网站吗app软件开发制作公司
  • 大连微信网站深圳宝安区邮编
  • 网站备案需要多久网站设计 网络推广的服务内容