33 lines
1007 B
Python
33 lines
1007 B
Python
import json
|
|
import glob
|
|
|
|
played = {}
|
|
|
|
for fn in glob.glob("*.json", recursive=False):
|
|
with open(fn, encoding='utf-8') as f:
|
|
data = json.load(f)
|
|
for r in data:
|
|
if r['cat'] == 'player' and r['act'] == 'join':
|
|
if r['uid'] not in played:
|
|
played[r['uid']] = 0
|
|
played[r['uid']] += 1
|
|
|
|
kv = {}
|
|
|
|
with open('s.csv', encoding='utf-8') as f:
|
|
for l in f:
|
|
r = l.strip().split(',')
|
|
kv[f'{r[1].upper()}-{r[2].upper()}'] = dict(uid=int(r[0]),rest=r[3:])
|
|
|
|
with open('u.csv', encoding='utf-8') as fin:
|
|
with open('o.csv', 'w', encoding='utf-8') as fout:
|
|
for l in fin:
|
|
r = l.strip().split(',')
|
|
key=f'{r[-1].upper()}-{r[-2].upper()}'
|
|
if key not in kv:
|
|
print(f'!!!!!!MISSING #{key}')
|
|
continue
|
|
uid = kv[key]['uid']
|
|
out = ','.join([l.strip(),f'{uid}',f'{played[uid]}',*kv[key]['rest']])
|
|
fout.write(out + '\n')
|
|
print(out) |