个人笔记:python读取某电子打卡机实时数据,读取目标文件夹最新文件并匹配特定字典,替换人员代码为姓名,写入新的文本文件

python读取某电子打卡机实时数据,读取目标文件夹最新文件并匹配特定字典,替换人员代码为姓名,写入新的文本文件

注:代码引入时间模块是因为该虹膜打卡机按年月日文件夹存储,该日文件夹数据两分钟生成一个csv我们需要读取最新时间的csv(文件命名无规律),所以循环列表得到最新文件,在进行数据转换和读取,由于数据的机密性不方便展示,大家知道大概原理和实施步骤即可
coding:utf-8
import csv
import datetime
import os

aa = datetime.datet ime.now().strftime('%Y-%m-%d')
years = datetime.datetime.now().strftime('%Y')
month = datetime.datetime.now().strftime('%m')
days = datetime.datetime.now().strftime('%d')
 print(aa,aa1,aa2,aa3)
filePath= './2019/10/18'
 filePath_one = "./HMDTP/1557397261314/1565161383166/"+years+"/"+month+"/"+days
file_list = os.listdir(filePath)
file_name = file_list[-1]
cc = "./HMDTP/1557397261314/1565161383166/"+years+"/"+month+"/"+days+"/"+file_name
print(cc)


dict_code = dict()
with open("hg.csv", 'r', encoding="utf-8") as f:
    reader = csv.DictReader(f)

    for row in reader:
        # Max TemperatureF是表第一行的某个数据,作为key
        WORKERCODE = row['WORKERCODE']
        WORKERNAME = row['WORKERNAME']

        dict_code[WORKERCODE]=WORKERNAME
print(dict_code)
keys_list = []
for key in dict_code:
    keys_list.append(key)

aa = []
csv_file = csv.reader(open('./2019.csv', 'r'))
for i in csv_file:
    i.pop(0)
    i.pop(2)
    i.pop(1)
    i.pop(5)
    i.pop(4)
    i.pop(5)
    i.pop(4)
    i.pop(4)

    aa.append(i)
aa.pop(0)
 print(aa)
f = open("data1.txt", "w")
zhuangtai = [{'1': '已入井'}, {'2': '已出井'}, {'0': '未入井'}]
for ii in aa:
    if ii[2] == '1':
        ii[2] = '已入井'
    elif ii[2] == '2':
        ii[2] = '已出井'
    elif ii[2] == '0':
        ii[2] = '未入井'
    for key in keys_list:
        if ii[0] == key:
            ii[0] = dict_code.get(key)
    del (ii[-1])
    for list_1 in ii:
        f.write(list_1 + ',')

    f.write('\n')

f.close()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值