1.目前可以提取當(dāng)天訪問的ip但是有bug第一個找到的不包含ip還有無法在其中提取訪問特定位置的記錄。2.代碼`!/usr/bin/envpythoncoding:utf-8importurllibimportjsonimporttimeimportreld=time.strftime("%d/%b/%Y",time.localtime())url='http://ip.taobao.com/service/...'defip_find(ip):data=urllib.urlopen(url+ip).read()datadict=json.loads(data)foroneinfoindatadict:if'code'==oneinfo:ifdatadict[oneinfo]==0:returndatadict['data']['country']+datadict['data']['region']+datadict['data']['city']+'\t'+datadict['data']['isp']defsort_value(s):d=sorted(s.iteritems(),key=lambdat:t[1],reverse=True)returndifname=='__main__':withopen('access.log')asf:content=f.read()patt=re.compile(ld+r'(.*)',re.S)result=re.search(patt,content).group(1)file=r'test.txt'withopen(file,'w+')asf:f.write(result)withopen('test.txt')asf:#/opt/nginx/logs/d={}forlineinf:field=line.split()printfieldiffield[0]notind:d.setdefault(field[0],[])d[field[0]].append(field[0])s={}forkind:s[k]=len(d[k])s=sort_value(s)[0:10]print'訪問IP\t\t\t訪問次數(shù)\t\tIP來源'print'----------------------------------------------------------------------------'forip,conins:printstr(ip)+'\t\t'+str(con)+'\t\t'+ip_find(ip)`3.日志文件106.38.121.196--[08/Jun/2018:18:15:43+0800]"POST/supervision/api/user/login.doHTTP/1.1"200503"http://supervision.bangcle.com/""Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/66.0.3359.117Safari/537.36"180.168.174.128--[11/Jun/2018:09:12:04+0800]"POST/supervision/api/user/login.doHTTP/1.1"200491"http://supervision.bangcle.com/""Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/67.0.3396.79Safari/537.36"106.38.121.195--[11/Jun/2018:18:11:04+0800]"GET/static/js/vendor.180eb0f8247b996979d3.jsHTTP/1.1"3040"http://supervision.bangcle.com/""Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/66.0.3359.117Safari/537.36"
python2腳本如何提取nginx日志當(dāng)天訪問特定位置的ip
陪伴而非守候
2019-05-14 11:23:28