58 lines
2.0 KiB
Python
58 lines
2.0 KiB
Python
import sys
|
|
import os
|
|
import csv
|
|
sys.path.insert(1,os.path.abspath("./pyzk"))
|
|
from zk import ZK, const
|
|
from collections import OrderedDict
|
|
'''
|
|
mesin absen baru 10.35.7.12
|
|
mesin absen office 10.35.14.10
|
|
mesin absen injection in 10.35.7.10
|
|
mesin absen injection out 10.35.7.11
|
|
'''
|
|
zk = ZK('10.35.7.12', port=4370, timeout=5, password=0, force_udp=False, ommit_ping=False)
|
|
conn = zk.connect()
|
|
|
|
userdata = []
|
|
#userdataset = OrderedDict()#{"uid":0,"name":"admin","password":"pass","group_id":"","user_id":""}
|
|
users = conn.get_users()
|
|
for user in users:
|
|
userdataset = OrderedDict()
|
|
#privilege = 'User'
|
|
#if user.privilege == const.USER_ADMIN:
|
|
# privilege = 'Admin'
|
|
#print ('+ UID #{}'.format(user.uid))
|
|
#print (' Name : {}'.format(user.name))
|
|
#print (' Privilege : {}'.format(privilege))
|
|
#print (' Password : {}'.format(user.password))
|
|
#print (' Group ID : {}'.format(user.group_id))
|
|
#print (' User ID : {}'.format(user.user_id))
|
|
print ('+ UID #{}'.format(user.uid))
|
|
userdataset["uid"] = user.uid
|
|
print (' Name : {}'.format(user.name))
|
|
userdataset["name"] = user.name
|
|
print (' Password : {}'.format(user.password))
|
|
userdataset["password"] = user.password
|
|
print (' Group ID : {}'.format(user.group_id))
|
|
userdataset["group_id"] = user.group_id
|
|
print (' User ID : {}'.format(user.user_id))
|
|
userdataset["user_id"] = user.user_id
|
|
userdata.append(userdataset)
|
|
print(userdata)
|
|
#userdataset.clear()
|
|
for u in userdata:
|
|
#print(u)
|
|
for key, value in u.items():
|
|
print(f"{key.capitalize()}: {value}")
|
|
#print("*" * 30) # 30 asterisks
|
|
print("=" * 50) # 50 equal signs
|
|
|
|
|
|
fieldnames = ["uid", "name", "password", "group_id", "user_id"]
|
|
with open('dump_user_new.csv', 'w', newline='', encoding='utf-8') as csv_file:
|
|
writer = csv.DictWriter(csv_file, delimiter=',', fieldnames=fieldnames)
|
|
writer.writeheader()
|
|
for u in userdata:
|
|
writer.writerow(u)
|
|
print("User data written to user_data.csv")
|