很多时候,上传的日志都是json格式,这个格式是需要转化成字典,才好进一步分析。
首先,python有针对json的包,就是:
import json
这个包,只有两个函数比较常用:
先打开文件,然后写个循环,每一个line转化成字典(要学会多用type()),
然后调取需要的那个字段,如果没有就写入null;
with open('init_ctime.txt','r') as f:
#print(f.readline())
for line in f:
data=json.loads(line)
data1=(data.get('id', 'NULL'), data.get('acode', 'NULL'))
最后,写入文件的话,需要转化一下格式,因为python只能写入字符串格式。
data_chuli=json.dumps(data1)
#print(data_chuli)
#print(type(data_chuli))
with open('qidong_jielun.txt', 'a') as ww:
ww.write(data_chuli)
这样可以批量处理不太规范的日志文件。 2个g的文件大概半小时能算完,还是比较方便的。