python 统计日志IP出现次数

cat test

218.79.251.215 - - [23/May/2006:08:57:44 +0800] "GET /fg172.exe HTTP/1.1" 206 2350253

220.178.150.3 - - [23/May/2006:08:57:40 +0800] "GET /fg172.exe HTTP/1.1" 200 2350253

59.42.2.185 - - [23/May/2006:08:57:52 +0800] "GET /fg172.exe HTTP/1.1" 200 2350253

219.140.190.130 - - [23/May/2006:08:57:59 +0800] "GET /fg172.exe HTTP/1.1" 200 2350253

221.228.143.52 - - [23/May/2006:08:58:08 +0800] "GET /fg172.exe HTTP/1.1" 206 719996

221.228.143.52 - - [23/May/2006:08:58:08 +0800] "GET /fg172.exe HTTP/1.1" 206 713242

221.228.143.52 - - [23/May/2006:08:58:09 +0800] "GET /fg172.exe HTTP/1.1" 206 1200250

awk

awk ‘{print $1}‘ test|uniq -c

python

#!/usr/bin/env python

file = open(‘test‘)
done = 0
list_ip = []
while not done:
        line = file.readline()
        if line != ‘‘:
                line = line.strip(‘\n‘)
                line_list = line.split(‘ ‘,1)
                list_ip.append(line_list[0])
        else:
                done = 1
file.close()

ip_test = list(set(list_ip))

for ip in ip_test:
        print "%s %s" % (list_ip.count(ip),ip)
时间: 2024-08-28 18:48:52

python 统计日志IP出现次数的相关文章

python统计apache、nginx访问日志IP访问次数并且排序(显示前20条)

前言:python统计apache.nginx访问日志IP访问次数并且排序(显示前20条).其实用awk+sort等命令可以实现,用awk数组也可以实现,这里只是用python尝试下. apache脚本: ips = {} with open("/root/mail_access_log-20180629") as fh:     for line in fh:         ip = line.split(" ")[0]         if 6 < le

用python统计日志中IP的数量

引 入 日志文件,是我们记录用户行为的重要手段.而对于不同的用户,我们往往又会根据IP来区分,所以统计日志文件中的IP访问,对于数据分析人员和相关运营专员来说,是一件重要的事情,这里,采用python这门语言来完成这个小功能. 一.分析IP格式 这里只讨论ipv4. 分析IP格式思路有许多,这里我只分析其中一种比较容易理解的. 1) 从分析一个从1~255的数字开始 一个1~255的数细分成以下5个分组. 数字分组 正则表达式表示 1~9 [1-9] 10~99 [1-9][0-9] 100~1

shell 截取日志 统计链接数 统计日志ip

按时间段获取日志 sed -n '/22\/Dec\/2015:00/,/22\/Dec\/2015:50/p' localhost_access_log.2015-11-10.txt > /tmp/acc.www.log  sed -n '/22\/Dec\/2015:00/,/22\/Dec\/2015:50/p' localhost_access_log.2015-11-10.txt |head -3  sed -n '/22\/Dec\/2015:00/,/22\/Dec\/2015:5

统计来访ip的次数,及输出来访次数大于10000的IP

分析IP[$1]++ ##统计IP下标出现的次数 for (i in IP){print IP[i],i} 循环输出IP下标出现的次数和下标(ip地址) 172.25.0.11172.25.0.12172.25.0.11172.25.0.10 分析后的结果 : awk '{IP[$1]++} END{for(i in IP){print IP[i],i}}' /var/log/httpd/access_log | awk '$1>=10000{print $2}' 原文地址:http://blo

python统计数组元素出现次数以及排序

数组: a = [1, 2, 3, 4, 2, 1, 4, 1, 1] 首先转换为字典,转换为"元素-出现次数"对: b = {} for i in a: b[i] = a.count(i) 实现方式一(冒泡): c = b.items()#转换为列表 for j in range(len(b)): for i in range(len(b)-j-1): if c[i][1] < c[i+1][1]: c[i] ,c[i+1] = c[i+1],c[i] print c 实现方式

python脚本统计日志独立ip

题目: 有如下log文件,请打印出独立IP,并统计独立IP数,打印出访问最多的前5个ip及访问次数: log文件www.log内容类似如下格式: 125.78.48.67 - - [25/Dec/2014:15:31:20 +0800] "GET /logo.jpg HTTP/1.1" 200 5183 "-" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" 10

统计日志中ip出现的次数

grep -r 'GET /weixin/weixin_izp/index.html' ./chunyun.access.log > ~/access.log cat access.log |awk '{print $1}'|cut -d, -f3|sort|uniq -c > mycount.log 1.要提取访问量最大的IP,需要先从日志中把IP段提取出来. $ cat aa.txt |awk -F " " '{print $1}' 127.0.0.1 192.168.

IIS日志——统计IP访问次数的一种方法

使用LogParser对IIS服务器被Hit访问的IP进行次数统计,方便结合防火墙IP***列表对IIS网站进行日志审计报表的编写 配置IIS网站的日志 下载进行日志分析的两个工具LogParser(命令行工具),下载地址:http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=24659LogParser Studio(图形化工具),下载地址:http://gallery.technet.microsoft.

python 统计时间,写日志

python 统计时间使用time模块,写日志使用logging模块,这两个都是标准模板. 测试socket使用socket模块 # 统计时间 ---------------------- import time start = time.time() end = time.time() stamp = end - start print "耗时", stamp # 日志 ----------------------- import loggingimport datetime cur