首先分析log文件的规律
判断 所需要的数据结构
注意 python中 定义的变量赋值的话,需要正确的,有可能就出错,这个是相当于c中的指针,
log = file('c://*******.log')
datedict={}
valuedict={}
while True:
line = log.readline()
if len(line)==0:
break
str = line.split()
try:
code = str[-3]
except IndexError:
pass
if code == '200':
date = str[0]
time = str[1]
timeto = time.split(':')[0]
if datedict.has_key(date):
datedict2 = datedict[date]
if datedict2.has_key(timeto):
datedict2[timeto]=datedict2[timeto]+1
else:
datedict2[timeto]=1
datedict[date]=datedict2
else:
datedict[date]={}
print datedict
for key,value in datedict.items():
filename = "c://"+key+".txt"
datefile= open(filename,'w')
print >> datefile ,'time , count'
valuedict=value
for datekey in sorted(valuedict.keys()):
print >>datefile,datekey,valuedict[datekey]
日志的分析,其实就是spilt(),正则表达式匹配,灵活的用dict,list等数据结构,
datedict2 = datedict[date]
这个地方 datedcit2是转向datedict对象的 如果定义为{}出错