IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python处理脱敏问题 -> 正文阅读

[Python知识库]python处理脱敏问题

背景描述

兄弟小组来了个脱敏需求,希望将一些文件里客户资料和账户密码等信息做脱敏处理。
本来是想在项目里处理的,可是考虑到数据和文档并非是在项目中给出,因而决定使用python来处理,更加简单。
(这是第二次写python脚本,哪里有问题,请大家评论里指出。)

原料

py 3.9 版本,PyCharm 2020.2.3 x64版本,CSV文件
源码在文章里。

代码开发

python脚本如下:

import pandas as pd                         #导入pandas包
import sys

def main():
    filePath = sys.argv[1]     #入参1 文件路径
    type = sys.argv[2]          #入参2 文件类型,不同文件类型对应不同处理方法
    print(filePath)
    print(type)
  #  filePath = 'D:/Code/pythonProject/VIP_KHXX20211203.csv'   #测试地址
    #type = 1
    if type== '1':
        # 1
        # 如果执行后文件的编码格式有问题,可以在encoding这里来解决
        df = pd.read_csv(filePath,encoding='ANSI', header=0)    #读文件   核心逻辑开始
        #print(df)
        df['客户名称'] = '张三'                                   #把df里客户名称这一列全部设为某个值
        df['证件号码'] = '123456789012345678'                    #把df里证件号码这一列全部设为某个值
        print(df)
        df.to_csv(filePath, mode="w",encoding='ANSI' ,index=False)  # 写入文件   #核心逻辑结束
    else :
        if type== '2':
        #2
            df = pd.read_csv(filePath,encoding='ANSI', header=0)
            #print(df)
           # df['交易密码'] = '锨潘拖儇'
          #  df['资金密码'] = '锨潘拖儇'
            df['邮箱'] = '12345678@126.com'
            df['手机号码'] = '12345678901'
            print(df)
            df.to_csv(filePath, mode="w",encoding='ANSI' ,index=False)  # 写入新文件
        else:
            if type =='3':
                # 3
                df = pd.read_csv(filePath, encoding='ANSI', header=0)
                # print(df)
                df['KHXM'] = '张三'
                df['ZJHM'] = '123456789012345678'
                df['MOBILE'] = '12345678901'
                df['DH'] = '021-12345678'
                df['EMAIL'] = '12345678@126.com'
                df['DZ'] = '上海市徐汇区xx路'
               # df['JYMM'] = '锨潘拖儇'
            #    df['ZJMM'] = '锨潘拖儇'
                print(df)
                df.to_csv(filePath, mode="w", encoding='ANSI' ,index=False)  # 写入新文件
    print("完成")
if __name__ == '__main__':   # 入口
    main()

实践效果

执行 python CSV.py param1 param2 命令
(参数1和参数2分别是 路径和 文件类型,针对不同的文件类型将进行不同的字段脱敏。
你可以针对这段代码稍加更改,使之符合你的要求。)
就可以实现对excel文档里的敏感字段进行脱敏。(本机测试截图)
在这里插入图片描述
结果展示,本机测试数据
![在这里插入图片描述](https://img-blog.csdnimg.cn/b4c8e02344d449d9ad4e90e98f2d5999.png

备注

1、执行代码需要考虑文件的编码格式,文件的编码格式应当在py执行前后保持不变。具体方案可以去看代码。我代码有注释。
在这里插入图片描述/
2、如果要到linux环境使用,需要在服务上配置py3和pandas,pandas版本太高会有问题。可以参考这个版本
在这里插入图片描述
配置好之后就可以在linux上随便找个目录执行 命令了。

参考内容

https://blog.csdn.net/m0_37530301/article/details/110531728?spm=1001.2014.3001.5502
https://github.com/WuJonah/py_autoTest
https://www.liaoxuefeng.com/wiki/1016959663602400
其实还有很多参考,但过去一两周了,找不太到了。
想学习python又不想看英文的可以去看看廖雪峰的博客。第三个网址就是。

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-05-24 18:07:23  更:2022-05-24 18:07:42 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 14:42:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码