汇总 python 输出中出现的字符串总数
To summarize total of string that appears in output in python
比如我要显示Dest port number 53出现了多少次,日志文件中有2000条数据,所以我需要显示每个Dest port sum。这是我的代码:
def main():
f = openfile("/Users/rin/Desktop/new sec/2017-04-18_010.082.012.003.txt")
if f is None:
print("File not found")
return
s = splitline(f)
for el in s:
if len(el) > 50:
p = parselog(el)
if "dstport" in p:
print("Dest Port : %s" % p["dstport"])
if "app" in p:
print("Apps : %s" % p["app"])
print("")
输出:
Dest Port : 53
Apps : DNS
Dest Port : 123
Apps : NTP
Dest Port : 53
Apps : DNS
Dest Port : 53
Apps : DNS
def main():
f = openfile("/Users/rin/Desktop/new sec/2017-04-18_010.082.012.003.txt")
if f is None:
print("File not found")
return
s = splitline(f)
# add a counter
counts = {}
for el in s:
if len(el) > 50:
p = parselog(el)
if "dstport" in p:
# increment counter
if p["dstport"] in counts:
counts[str(p["dstport"])] += 1
else:
counts[str(p["dstport"])] = 1
print("Dest Port : %s" % p["dstport"])
if "app" in p:
print("Apps : %s" % p["app"])
print("")
# output the count
for k, v in counts.iteritems():
print 'Dest Port %s Count: %s' % (k, v)
比如我要显示Dest port number 53出现了多少次,日志文件中有2000条数据,所以我需要显示每个Dest port sum。这是我的代码:
def main():
f = openfile("/Users/rin/Desktop/new sec/2017-04-18_010.082.012.003.txt")
if f is None:
print("File not found")
return
s = splitline(f)
for el in s:
if len(el) > 50:
p = parselog(el)
if "dstport" in p:
print("Dest Port : %s" % p["dstport"])
if "app" in p:
print("Apps : %s" % p["app"])
print("")
输出:
Dest Port : 53
Apps : DNS
Dest Port : 123
Apps : NTP
Dest Port : 53
Apps : DNS
Dest Port : 53
Apps : DNS
def main():
f = openfile("/Users/rin/Desktop/new sec/2017-04-18_010.082.012.003.txt")
if f is None:
print("File not found")
return
s = splitline(f)
# add a counter
counts = {}
for el in s:
if len(el) > 50:
p = parselog(el)
if "dstport" in p:
# increment counter
if p["dstport"] in counts:
counts[str(p["dstport"])] += 1
else:
counts[str(p["dstport"])] = 1
print("Dest Port : %s" % p["dstport"])
if "app" in p:
print("Apps : %s" % p["app"])
print("")
# output the count
for k, v in counts.iteritems():
print 'Dest Port %s Count: %s' % (k, v)