国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python腳本實現統計日志文件中的ip訪問次數代碼分享

2019-11-25 18:17:54
字體:
來源:轉載
供稿:網友

適用的日志格式:

106.45.185.214 - - [06/Aug/2014:07:38:59 +0800] "GET / HTTP/1.0" 200 10 "-" "-"171.104.119.22 - - [06/Aug/2014:08:55:01 +0800] "GET / HTTP/1.0" 200 10 "-" "-"27.31.238.242 - - [06/Aug/2014:09:43:19 +0800] "GET / HTTP/1.0" 200 10 "-" "-"218.65.202.131 - - [06/Aug/2014:10:33:59 +0800] "GET / HTTP/1.0" 200 10 "-" "-"

以上為nginx的日志,本程序只適合用于IP在開頭并用空格分開的這種格式。

實例代碼:

import sys class Log:   def __init__(self, filename,dic,count):    self.filename = filename    self.dic=dic    self.count=count   def parse(self):    i=1    f=file(self.filename)    while True:      line=f.readline()      if len(line)==0:        break      ip=line.split(' ')      if ip[0] in dic:        self.dic[ip[0]]=self.dic[ip[0]]+1      else:        self.dic[ip[0]]=i    soredic=sorted(self.dic.items(), key=lambda d:d[1],reverse=True)    counts=0;    for item in soredic:      if counts==int(self.count):        break      print("IP:%s  Total Times: %s"%(item[0],item[1]))      counts=counts+1    f.close() if __name__=="__main__":   if len(sys.argv)<3:    print('usage:log.py log.log toptimes/nexample log.py log.log 20/ncode by iswin')    sys.exit()  dic={}  log=Log(sys.argv[1],dic,sys.argv[2])  log.parse()    
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 上林县| 射洪县| 札达县| 梁平县| 新巴尔虎左旗| 全南县| 鲁山县| 宜阳县| 博野县| 波密县| 桦南县| 沧源| 兴安盟| 美姑县| 广昌县| 天祝| 桂东县| 丹巴县| 恭城| 栖霞市| 江陵县| 西藏| 义乌市| 山西省| 白玉县| 阳江市| 黄梅县| 筠连县| 永丰县| 宜宾市| 庄河市| 吉木乃县| 阳朔县| 荆门市| 抚顺县| 和田县| 嘉鱼县| 葵青区| 克拉玛依市| 河北省| 固原市|