程序猿全敏
2017-02-13 10:39:26
记一次python脚本处理日志,获得想要登录成功的相关数据
首先,了解需求。要通过日志来获取登录成功的相关信息。取得日志,查看日志格式。
仔细检查下,重要不是代码,是思路。请听解析。
1.登录成功的日志会含有successfully的字样。所以,只要把含有该字样的字段取出来。
2.现在你会发现没行都含有INFO的头。所以,我们现在要想办法把上面的去掉。只要{ }里面的内容,仔细一看,唉!中间有一个AmLogReceiveController -,好,那就一行一行通过这个字段来分开。这样得到的是一个数组,我们只要第二个数组,也就是{ }里面的内容
3.现在得到的是一个json格式的,转对象后来取值,一行一行来转然后取。
好了,基本思路就是这样,我来放代码了。
#coding:gbk import re import time import json file = 'server1.log' fin = open(file,'r') c="successfully" a=fin.readlines() fout=open('qm.txt','w') buff = fin.read() print("开始处理......") fout.write("sumbitDate"+"\t"+"xforwardedFor"+"\t"+"id"+"\t"+"msg"+"\n") for x in a: if c in x: attr=x.split('AmLogReceiveController -') data = json.loads(attr[1]) fout.write(data['sumbitDate']+"\t"+data['xforwardedFor']+"\t"+data['id']+"\t"+data['msg']+"\n") print("处理完毕!生成的文件为qm.txt") fin.close()
代码写完了。接着来运行下,看行不行嘛!
然后检查一下。qm.txt文件
好了,这个逼就装到这里了。有疑问的可以加我qq1610656207.加个基友
评论
最近浏览
cs383450139
2019年3月22日
暂无贡献等级
shanpengnian LV13
2018年6月22日
低调人 LV38
2018年5月24日
敏哥gege LV43
2017年12月5日
203778513 LV9
2017年9月13日
leehaitao2 LV10
2017年8月14日
EnterCJ LV6
2017年4月10日
pjxiang310 LV2
2017年2月27日
liukai007 LV2
2017年2月27日
zwq0506 LV1
2017年2月24日