Python文件脱敏工具: Word和Excel文件敏感信息保护

本工具使用Python实现对Word和Excel文件进行脱敏处理,可以有效保护文件中的敏感信息,例如姓名、电话号码等。该工具简单易用,仅需选择文件并点击按钮即可完成脱敏操作。

代码实现

def create_new_window4():
    def desensitize_text(text):
        # 替换为*
        text = re.sub(r'[一-龥]{2,}', '*', text)
        # 替换为****
        text = re.sub(r'\d{3}\d*(\d{4})', r'****\1', text)
        return text

    def desensitize_word_file(file_path):
        document = Document(file_path)
        for paragraph in document.paragraphs:
            paragraph.text = desensitize_text(paragraph.text)
        for table in document.tables:
            for row in table.rows:
                for cell in row.cells:
                    cell.text = desensitize_text(cell.text)
        document.save(f'desensitized_{file_path}')

    def desensitize_excel_file():
        file_path = filedialog.askopenfilename()
        if file_path:
            workbook = openpyxl.load_workbook(file_path)
            for sheet in workbook.sheetnames:
                worksheet = workbook[sheet]
                for row in worksheet.iter_rows(values_only=True):
                    desensized_row = [desensitize_text(str(cell)) for cell in row]
                    worksheet.append(desensized_row)
            workbook.save(f'desensitized_{file_path}')

    def desensitize_word():
        file_path = filedialog.askopenfilename()
        if file_path:
            desensitize_word_file(file_path)

    new_window = tk.Toplevel(root_new)
    new_window.title('脱敏窗口')
    new_window.geometry('500x400')

    word_button = tk.Button(new_window, text='Word文件脱敏', command=lambda: desensitize_word())
    word_button.pack(pady=10)

    excel_button = tk.Button(new_window, text='Excel文件脱敏', command=desensitize_excel_file)
    excel_button.pack(pady=10)

使用方法

  1. 安装必要的库:pip install python-docx openpyxl tkinter filedialog
  2. 运行代码,选择需要脱敏的Word或Excel文件
  3. 点击对应按钮,程序会自动将文件脱敏并保存为desensitized_xxx.xxx格式

代码说明

  • desensitize_text()函数用于对文本进行脱敏处理,将中文姓名替换为'',将电话号码替换为'',其中*保留后四位号码
  • desensitize_word_file()函数用于对Word文件进行脱敏处理
  • desensitize_excel_file()函数用于对Excel文件进行脱敏处理
  • create_new_window4()函数用于创建脱敏窗口,包含两个按钮,分别用于选择Word文件和Excel文件进行脱敏

注意

  • 本工具只对文本内容进行脱敏处理,不会对其他信息进行修改
  • 脱敏后的文件会保存在原文件目录下
  • 该工具仅供参考,请根据实际情况进行修改和完善

总结

本工具可以方便快捷地对Word和Excel文件进行脱敏处理,有效保护文件中的敏感信息。希望本工具能够帮助到您。


原文地址: https://www.cveoy.top/t/topic/oG9p 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录