Python分析web访问日志

  1. 通用日志格式 127.0.0.1 - - [14/May/2017:12:45:29 +0800] "GET /index.html HTTP/1.1" 200 4286 远程 - - 主机 IP 请求时间 时区 方法 资源 协议 状态码 发送字节

  2. 组合日志格式 127.0.0.1 - - [14/May/2017:12:51:13 +0800] "GET /index.html HTTP/1.1" 200 4286 "http://127.0.0.1/" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36" 远程主机 IP - - 请求时间 时区 方法 资源 协议 状态码 发送字节 referer 字符 浏览器信息

Web访问日志示例

分析 • 按天统计 o 每天日志行数 o 每天浏览每个 IP 的访问次数 o 每天访问者数量 = 每天出现 IP 组成集合的数量 o 每天状态码出现次数 o 每天流量总数 • 总统计 o 总日志行数 = 每天日志行数之和 o 总访问者数量 = 所有出现 IP 组成的集合数量 • 地域分布 o 所有出现 IP 的访问次数 排序取 TOP20 o 根据 IP 查找地理位置

效果图

代码