python模拟访问与分析访问日志

python语言,不介绍了。我这里就是Python 2.7来模拟访问。主要是分析访问日志。看那个是想DDOS攻击的。还有就是看他们还的访问次数等。下面是python模拟访问的代码。

#coding:utf-8
import urllib2
import threading
def geturl():
    url='http://192.168.1.103/'

    rq=urllib2.Request(url)
    rq.add_header("User-Agent","he he")
    response=urllib2.urlopen(rq)
    html=response.read()
    print html    

def doweb():
    geturl()

for x in range(500):
    t=threading.Thread(target=doweb)
    t.start()

//额~直接访问的次数可以直接改500这个数字就是想多少次就多少次。

61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
61.145.146.60 - - [15/Sep/2016:16:06:00 +0800] "GET / HTTP/1.1" 200 45
//访问日志表直接变成这个样子。

netstat -apt //这个命令显示tcp网络使用情况,
1、LISTENING状态 服务启动后首先处于侦听状态。
2、ESTABLISHED状态 ESTABLISHED的意思是建立连接。表示两台机器正在通信。
3、CLOSE_WAIT 对方主动关闭连接或者网络异常导致连接中(自己关了浏览器)
4、TIME_WAIT 我方主动调用close()断开连接,收到对方确认后状态变为TIME_WAIT

netstat -ant //显示tcp模式运行状况 配合 netstat -ant | greep 80

netstat -ant| grep ESTABLISHED netstat -antp //显示正在通讯IP

netstat -apt
tcp 0 0 121.40.76.153:80 61.145.146.60:6800 TIME_WAIT
tcp 0 0 121.40.76.153:43684 110.75.102.62:80 ESTABLISHED
tcp 0 0 121.40.76.153:80 61.145.146.60:6814 TIME_WAIT
tcp 0 0 121.40.76.153:80 61.145.146.60:6834 TIME_WAIT
tcp 0 0 121.40.76.153:80 61.145.146.60:6774 FIN_WAIT2
tcp 0 0 121.40.76.153:80 61.145.146.60:6796 TIME_WAIT
tcp 0 0 121.40.76.153:80 61.145.146.60:6808 TIME_WAIT
tcp 0 0 121.40.76.153:80 61.145.146.60:6804 TIME_WAIT
tcp 0 0 121.40.76.153:80 61.145.146.60:6752 TIME_WAIT
tcp 0 0 121.40.76.153:80 61.145.146.60:6786 TIME_WAIT
tcp 0 0 121.40.76.153:80 61.145.146.60:6750 TIME_WAIT
tcp 0 0 121.40.76.153:80 61.145.146.60:6818 TIME_WAIT
tcp 0 0 121.40.76.153:80 61.145.146.60:6762 TIME_WAIT

//由于都是静态页面直接TIME_WAIT

学习一个分析工具awk
//把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理
//记住,是空格
cat access_log | awk '{print $1}' //会输出一堆ip,$1就是第一个,$2就是第二个自己试试吧

58.61.66.99
58.61.66.99
58.61.66.99
58.61.66.99
58.61.66.99
58.61.66.99
58.61.66.99
58.61.66.99
58.61.66.99
58.61.66.99
58.61.66.99

还有学习一个就是sort命令
//默认按ascii排序,常用来排序非数字
//-n 按数字形式排序
//-r 倒排序
sort -n xxx
sort -rn xxx

还有一个uniq命令
//去除排序过的文件中的重复行,因此uniq经常和sort合用,所有的重复行必须是相邻的。
//-c或--count 在每列旁边显示该行重复出现的次数
//-d或--repeated 仅显示重复出现的行列。
cat xxx | sort -n | uniq
cat xxx | sort -n | uniq -c

//这样结合基本知道了谁比较喜欢经常访问
cat access_log | awk '{print $1}' | sort -n | uniq -c

//下面是用python的分析方法。把访问日志下载下来。
python代码

file=open("access_log.txt",mode="r")
try:
    #str_lines=file.readlines()
    line=file.readline()
    tj={}
    while line:
        line_sp=line.split(' ')
        if len(line_sp)>3:
            if(tj.has_key(line_sp[0])):
                tj[line_sp[0]]=tj[line_sp[0]]+1
            else:
                tj[line_sp[0]]=1
        line=file.readline()
    print sorted(tj.iteritems(),key=lambda abc:abc[1],reverse=True)

except Exception,e:
    print e
finally:
    file.close()

[('61.145.146.60', 51), ('58.61.66.99', 11), ('61.145.144.91', 1), ('169.229.3.91', 1), ('60.253.201.24', 1), ('61.145.129.33', 1)]
结果出来了,访问最多的就是61.145.146.60,访问了51次

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,179评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,229评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,032评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,533评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,531评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,539评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,916评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,813评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,568评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,654评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,354评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,937评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,918评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,152评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,852评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,378评论 2 342

推荐阅读更多精彩内容