内容目录

  • Python 基础
  • 使用模块介绍
  • 可视化组件 echarts 介绍
  • Web 访问日志
  • 代码解读

讲师:KK

多语言混搭开发工程师,多年 PHP、Python 项目开发经验,曾就职 360、绿盟科技,7年工作经验。擅长于 Web 安全开发、性能优化、分布式应用开发&设计等多方面,51Reboot 金牌讲师。

Python 基础

  • 数值、字符串、列表、字典、文件的使用
  • with 关键字使用
  • 函数、lambda 函数、sorted
  • 时间类型转化

时间类型转化

 

统计 list 中每个元素出现的次数

languages = ['python', 'java', 'python', 'c', 'c++', 'go', 'c#', 'c++', 'lisp', 'c', 'javascript', 'java', 'python', 'matlab', 'python', 'go', 'java']

常用模块 

  • os/os.path 系统/文件路径操作

-os.mkdir/os.rmdir/os.unlink/os.listdir

-os.path.join/os.path.abspath/os.path.dirname/os.path.exists

  • argparse 命令行参数解析

-add_argument(short_name, full_name, type, desc, default, help, choices, nargs, action)

  • shutil 文件/文件夹操作

-shutil.copy2/shutil.copytree/shutil.rmtree

  • logging 日志记录

-logging.basicConfig(level, format, filename, filemode)

-https://www.jianshu.com/p/4a801f61ecda

  • jinja2 模板引擎,用于根据模板生成文件

-使用步骤(3步走)

-创建加载器

-获取模板

-渲染

-模板语言

-打印变量

-流程控制(条件、循环)

-过滤器

-模板继承

  • geoip2 用于 maxmind 二进制库 mmdb 查询

-打开文件

-获取 ip 信息(国家、城市、地理位置等)

-关闭文件

可视化组件 echarts 介绍

  • 项目地址:http://echarts.baidu.com/echarts2/
  • 项目介绍:可视化JS组件
  • 目前主要版本:2.0 & 3.0
  • 使用步骤(3 + 3):http://echarts.baidu.com/echarts2/doc/start.html
  • 常用图形

-饼状图

-曲线图

-柱状图

-仪表盘

-地图

-K 线图

-

Web 访问日志

  • Web 访问日志是 web 服务器记录的网站被访问的过程日志
  • 日志属性

-什么时候

-什么人

-通过什么工具

-以什么方式

-访问了什么资源

-结果是什么(状态/返回数据大小)

  •  每天的点击量、总点击数量

-每天的日志行数、日志的总行数(每天的日志行数之和)

  • 每天的浏览者数量、总浏览者数量

-每天的不重复的 IP 的数量

-总的不重复的 IP 数量(每天不重复的 IP 数量之和???)

  • 发生错误的请求有多少次,状态码分布情况

-每种状态码出现的次数

  • 每天流量大小

-每天的日志中每行流量之和

-总的流量之和(每天流量之和)

  • 访问地域分布

-根据 IP 获取地理位置

  • 发生访问次数最多 TOP N IP 列表
  • 通用日志的格式

  • 组合日志格式

-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 字符 浏览器信息

一些重点代码的解读

  • 程序入口

  • 主程序

  • 每天统计项

  • 总统计项

  • 模板页面(显示内容)

  • 模板页面(echart)

  • 模板页面(控制流程)

更多项目代码分享结束后资料一并分享给大家。

本次分享时间:2018-11-08

21:00-22:00

报名方式:扫码添加小助手备注:公开课 来源:博客园,会拉入直播分享群

提示:51Reboot Python 零基础入门课程正在火热招生。

可视化分析 web 访问日志的更多相关文章

  1. 机器数据的价值 - Web 访问日志和数据库审计日志

    计算机数据 大量的数据流,不断增长的来源,蕴含着巨大的价值 在 Splunk,我们大量谈及计算机数据.这些数据是指在数据中心.“物联网”和互联设备世界中运行的所有系统产生的数据.其中包括支撑组织的应用 ...

  2. 采集并分析Nginx访问日志

    日志服务支持通过数据接入向导配置采集Nginx日志,并自动创建索引和Nginx日志仪表盘,帮助您快速采集并分析Nginx日志. 许多个人站长选取了Nginx作为服务器搭建网站,在对网站访问情况进行分析 ...

  3. Python基础(三):简化除法判断、分析apache访问日志、扫描存活主机、利用多线程实现ssh并发访问

    一.简化除法判断 目标: 编写mydiv.py脚本,主要要求如下: 提示用户输入一个数字作为除数 如果用户按下Ctrl+C或Ctrl+D则退出程序 如果用户输入非数字字符,提示用户应该输入数字 如果用 ...

  4. 利用GoAccess分析Nginx访问日志

    原文链接:https://blog.csdn.net/yown/article/details/56027112 需求:及时得到线上用户访问日志分析统计结果,以便给开发.测试.运维.运营人员提供决策! ...

  5. 使用hive分析nginx访问日志方法

    以下案例是使用hive分析nginx的访问日志案例,其中字段分隔通过正则表达式匹配,具体步骤如下: 日志格式: 192.168.5.139 - - [08/Jun/2017:17:09:12 +080 ...

  6. 命令分析nginx访问日志的用法

    awk分析日志常用高级使用命令方法 分析访问日志(Nginx为例) 日志格式: '$remote_addr - $remote_user [$time_local] "$request&qu ...

  7. Centos下Nginx配置WEB访问日志并结合shell脚本定时切割

    在一个成熟的WEB系统里,没有日志管理是不可以的,有了日志,可以帮助你得到用户地域来源.跳转来源.使用终端.某个URL访问量等相关信息:通过错误日志,你可以得到系统某个服务或server的性能瓶颈等. ...

  8. python脚本分析nginx访问日志

    日志格式如下: 223.74.135.248 [11/May/2017:11:19:47 +0800] "POST /login/getValidateCode HTTP/1.1" ...

  9. 统计web 访问日志的请求数据

    tomcat日志格式  在配置文件 server.xml 中,具体参照官方文档 https://tomcat.apache.org/tomcat-8.0-doc/config/valve.html#A ...

随机推荐

  1. EBS中比较复杂的trace方法

    FND LOG Messages-------------------------a) Using the System Administrator Responsibility, navigate  ...

  2. 反射工具类.提供调用getter/setter方法, 访问私有变量, 调用私有方法, 获取泛型类型Class,被AOP过的真实类等工具函数.java

    import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.Validate; import org.ap ...

  3. [转] 29个你必须知道的Linux命令

    总结: 1. find  查找文件 2. grep 查找某个文件或者文件夹里面文件的内容 29个你必须知道的Linux命令 虽然Linux发行版支持各种各样的GUI(graphical user in ...

  4. js检测密码强度

    <script> function AuthPasswd(string) {     if(string.length >=6) {         if(/[a-zA-Z]+/.t ...

  5. SGU---107 水题

    题目链接: http://codeforces.com/problemsets/acmsguru/problem/99999/107 题目大意: 求n位数有多少个的平方末尾是987654321 思路: ...

  6. 算法题:整形数组找a和b使得a+b=n

    题目: 数组 A 由 1000 万个随机正整数 (int) 组成,设计算法,给定整数 n,在 A 中找出 a 和 b,使其符合如下等式: n = a + b 解题思路: 1. 1000w个随机正整数占 ...

  7. 4521: [Cqoi2016]手机号码

    4521: [Cqoi2016]手机号码 Time Limit: 10 Sec Memory Limit: 512 MB Submit: 1030 Solved: 609 [Submit][Statu ...

  8. luogu P2617 Dynamic Rankings(主席树)

    嘟嘟嘟 一句话题意:带修改区间第\(k\)小. 不修改都会,主席树板子.但是有修改就要比较深入的理解主席树了. 众所周知,主席树中以\(i\)为根的线段树维护的是\([1, i]\)这个前缀的权值,因 ...

  9. GeeTest 极验验证

    前台Html页面 <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> ...

  10. ethers.js-1

    https://docs.ethers.io/ethers.js/html/ What is ethers.js The ethers.js library aims to be a complete ...