#!/usr/bin/env python
#coding:utf-8 def open_file(file_name):
res={}
with open(file_name) as f:
for line in f:
tmp=line.split(' ')
# print tmp
ip,url=tmp[0],tmp[6]
# print ip,url 以元组的形式存到列表中
res[(ip,url)]=res.get((ip,url),0)+1
return sorted(res.items(),key=lambda x:x[1],reverse=True)
#print open_file('log1.log') def get_htmlstr(arr):
#拼接字符串
tmp1='<tr><td>Num%s</td> <td>%s</td> <td>%s</td> <td>%s</td></tr>'
html_str='<table border="1px">'+tmp1%('名次','IP','URL','COUNT')
for index,value in enumerate(arr[:10]):
html_str+='<tr><td>Num%s</td> <td>%s</td> <td>%s</td> <td>%s</td></tr>' %(index,value[0][0],value[0][1],value[1])
html_str+='</table>'
return html_str
def write_html(file_name):
res=open_file(file_name)
with open('res2.html','w') as f:
f.write(get_htmlstr(res))
write_html('log1.log')

  

python练习 根据日志中的ip和url排序的更多相关文章

  1. Python统计日志中每个IP出现次数

    介绍了Python统计日志中每个IP出现次数的方法,实例分析了Python基于正则表达式解析日志文件的相关技巧,需要的朋友可以参考下 本脚本可用于多种日志类型 #-*- coding:utf-8 -* ...

  2. 配置日志中显示IP

    package com.demo.conf; import ch.qos.logback.classic.pattern.ClassicConverter; import ch.qos.logback ...

  3. logresolve - 解析Apache日志中的IP地址为主机名

    logresolve是一个解析Apache访问日志中IP地址的后处理程序. 为了使对名称服务器的影响降到最低,logresolve拥有极为自主的内部散列表缓存, 使每个IP值仅仅在第一次从日志文件中读 ...

  4. 使用Python 统计nginx日志前十ip访问量并以柱状图显示

    脚本内容: import matplotlib.pyplot as plt # nginx_file = '10.6.11.91_access.log-2018-12-27' ip = {} #筛选n ...

  5. How To:分析ORACLE监听日志中的IP信息

    有时候需要分析出ORACLE日志监听中的IP信息,分享一个组合命令,Linux的shell下运行正常. grep "HOST=.*establish.*\* 0" listener ...

  6. Python习题-统计日志中访问次数超过限制的IP

    #1.1分钟之内ip访问次数超过200次的,就给他的ip加入黑名单#需求分析: #1.读日志,1分钟读一次 #2.获取这1分钟之内所有访问的ip #3.判断ip出现的次数,如果出现200次,那么就加入 ...

  7. python在json文件中提取IP和域名

    # qianxiao996精心制作 #博客地址:https://blog.csdn.net/qq_36374896 import re def openjson(path): f = open(pat ...

  8. python先序、中序、后序排序

    #encoding=utf-8 class Tree(): def __init__(self,leftjd=0,rightjd=0,data=0): self.leftjd = leftjd sel ...

  9. Excel中针对IP地址的排序方法

    新建一个辅助排序列,用辅助列来扩展,辅助列公式如下: =TRIM(TEXT(LEFT(SUBSTITUTE(A1,".",REPT(" ",99)),100), ...

随机推荐

  1. [Ramada] Build a Functional Pipeline with Ramda.js

    We'll learn how to take advantage of Ramda's automatic function currying and data-last argument orde ...

  2. Demo Swig

    演示使用swig工具创建c语言的java接口,生成.so库和java接口文件. 在此之前先要安装swig,安装方法:sudo apt-get install swig 1.使用eclipse创建工程. ...

  3. CentOS下通过locale来设置字符集

    转载:http://www.centoscn.com/CentOS/config/2013/1013/1784.html 在Centos中通过locale来设置程序运行的不同语言环境,locale由A ...

  4. HBase-再看HBase

    为什么HBase主要应用于在线应用系统?(还没搞懂) www.github.com/HBaseinaction google 三大论文  Google File System MapReduce Bi ...

  5. 为Mono安装MySql连接驱动

    为Mono安装MySql连接驱动(转) 2013 年 1 月 24 日.NETmono.MySql DOTNET and Mono by default only support database c ...

  6. c++算术运算时数据类型提升带来的问题

    两类位移运算:左移和右移,逻辑的或者算术的. 左移比较简单:右边补0:右移:算术的补位是根据符号位确定的,逻辑的补0即可:java中是不同的,java貌似只补0. 位移中的类型提升问题过去没有注意过, ...

  7. Android防微信首页左右滑动切换

    大家看到微信首页切换效果有没有觉得很炫,滑动切换,点击底部bar瞬间切换,滑动切换渐变效果,线上效果图: 之前也在博客上看到别人的实现,再次基础上,我做了些优化.首先说下实现原理,大神略过,o(╯□╰ ...

  8. mongoDB 用java连接

    (1)下载连接java 的驱动包mongo-2.10.1.jar 下载网址 https://github.com/mongodb/mongo-java-driver/downloads (2)导入下载 ...

  9. ip 子网掩码 网关 DNS

    这一篇文章也很好: 原文引用于:  http://www.cnblogs.com/jiqing9006/p/3365939.html 内外网ip: IP地址: IPv4地址分为A.B.C.D.E五类, ...

  10. [未完成]关于Eclipse4RCP书中内容总结

    原文地址http://www.vogella.com/tutorials/EclipseRCP/article.html Table of Contents 1. Eclipse 4 1.1. Wha ...