2019/11/05 04-useragent分析

在这里插入图片描述
现在该做真正的分析了,合并的代码中有个donothing
在这里插入图片描述
**是什么就把什么抛出回去,什么都没做
**
在这里插入图片描述

下面就需要真正写一个分析函数,handler,handler属于业务功能,代码中真正值钱的部分在这里插入图片描述
对于爬虫可能几分钟就要进行分析了,不然别人都爬取完了,还需要做一些防盗链,百度的爬虫是baiduspider,google的叫google bot,要么是机器人要么是爬虫
在这里插入图片描述
状态码是访问网站的时候,服务器返回的httpd协议的东西
这么多都是200在这里插入图片描述
404表示你请求的资源根本不存在
在这里插入图片描述在这里插入图片描述
pending表示正在下载还没结束
在这里插入图片描述
禁用缓存,相当于所有数据都是从服务器重新拿在这里插入图片描述
清除刷新网页
在这里插入图片描述
304是写好的js脚本,这个到达浏览器之后经常不会变化,js特别适合放在浏览器端缓存起来,没必要反复问服务器端要
在这里插入图片描述在这里插入图片描述
304 ,服务器收到客户端提交的请求参数,发现资源未变化,要求浏览器使用静态资源的缓存,你的机器在哪,缓存 就在哪,本地的缓存读取
日志里,304某个文件比较多,说明缓存效果明显,大大减少服务器压力,省下来带宽资源
所以配置web服务器的时候,静态内容的缓存配置非常重要,jpg,css,js,减少了带宽压力,能够给更多用户提供服务

在这里插入图片描述
运维或者开发,部署或者调用路径写错了,网页发生改变找不到了
万一有人试错嗅探url,就很容易暴露,所以一定要加限制

在这里插入图片描述
500问题是内部服务器错误,比如数据库服务器挂了,比如502,可能反向代理服务器挂了,上游服务器(真正后面提供文别服务的服务器挂了)挂了
304,做的好,用户体验就很好
APP其实走的也是http协议,也是个浏览器

在这里插入图片描述
这里面有状态码,做占比就要先算总人数在这里插入图片描述
取一段,需要把他们放在容器里有多少个,200出现了几次除以总数,就是占比在这里插入图片描述
拿到的字典是这样的,一个是datetime,一个是status
在这里插入图片描述
通过list可以拿到这些字典,item就是yield出来的fields
在这里插入图片描述
拿到之后下来,item是放的一个个字典
{datetiem:xxx,status:xxx}
比如下面4条依次迭代出来,这时候求200占比

在这里插入图片描述

字典[status]=200作为key
找到200就+1,没有就0
总数就是个数len(iterable)列表的元素个数
然后就可以return了,告诉是什么的占比 k:v/total
这是指一小段时间的占比
在这里插入图片描述
携程上次误删数据,说明里面也可能是混乱,权限给太大了,管理水平比较低

如果要附加数据,比如把时间点current加进去也可以,就可以画坐标系,告诉你站点几点几分是什么样的

这就是所谓的状态码的分析在这里插入图片描述在这里插入图片描述
之前这么写相当于不能调整这个参数在这里插入图片描述
这下面加一下即可,这样就可以把参数传进来即可,下面也需要进行修改,用这种方式编码就可以调整了,有些日志是gbk,有些是utf-8,最好约定好一样的在这里插入图片描述
这是完整代码
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
除去你的程序名之外,拿到的各种参数和选项
在这里插入图片描述在这里插入图片描述

浏览器的分析

在这里插入图片描述
APP内部也是浏览器,网页也是,就需要分析浏览器,分清楚移动还是PC访问
这些信息叫user agent
在这里插入图片描述
如果通过任何一种浏览器跟用户通信,现在都会把useragent带入到数据,发送给服务器端的
请求是有的

在这里插入图片描述
通过知道对方是什么浏览器,就可以知道对方支持什么html特性在这里插入图片描述
操作系统信息
在这里插入图片描述
渲染引擎
在这里插入图片描述
IE的引擎用的三叉戟 Trident在这里插入图片描述
都给你封装好 ,实际是调用parser user-agnets再做一次封装在这里插入图片描述在这里插入图片描述
这里也可以安装
在这里插入图片描述在这里插入图片描述在这里插入图片描述
高级设置里有一个user agent的设置在这里插入图片描述
在和服务器交互的时候只能通过useragent知道你是谁,
遨游因为屏蔽广告才被国内封杀掉
在这里插入图片描述在这里插入图片描述
复制到这里,现在就已经解析了在这里插入图片描述
这个是useragent类里的在这里插入图片描述
useragent类里有什么,ua_string,os,browser,device
在这里插入图片描述
浏览器提取出来,ua.browser
在这里插入图片描述
firefox出现两次但是版本不一样,因为不同版本对浏览器支持程度是不太一样的在这里插入图片描述在这里插入图片描述
移动端的浏览器更多,移动端一般都会写,mobile,浏览器分析是很重要的
统计不同浏览器的访问次数

在这里插入图片描述在这里插入图片描述
只统计,不重叠在这里插入图片描述
建议不同浏览器,和版本都要分一下,不同浏览器版本不同特性也不同

从src迭代器拿数据就没什么问题了在这里插入图片描述在这里插入图片描述
现在就拿到一堆数据,注释掉
在这里插入图片描述
现在就是在统计这些信息,在一小段时间内统计出来的都是谁
在这里插入图片描述
如果要统计到目前为止,统计的浏览器次数各是多少,一共出现多少次
这些字典按照key累加起来试试

在这里插入图片描述这些字典按照key累加起来试试,没有必要再遍历一次在这里插入图片描述
模拟去拿数据
在这里插入图片描述
上面的执行完,相当于把所有文件的行都处理完了
在这里插入图片描述在这里插入图片描述
输入plot,数据就出来了在这里插入图片描述
现在想要排序,sorted (allbrowsers
在这里插入图片描述
pandas一般可以命名pd,pyplot命名成plt,现在做完数据分析就可以画图了在这里插入图片描述
做数据分析可以看看,不做要求
现在想要只按照浏览器的名字重新加一下

在这里插入图片描述
如何重新加一下,key拿到其实还可以解构,ver是版本号v是value
在这里插入图片描述
现在就是把名称累计,不看版本号,get,以前没有就为0
chrome就有240多个
UC被阿里收购了
mobile移动端正在上升,浏览器的兼容在手机就要更好

在这里插入图片描述
百度有个rank,谁的网站评分高,就优先去经常访问
在这里插入图片描述
useragent比较重要,一般是让你这个网站能够辨别你是什么浏览器
BAT这种处于垄断地位,就阻碍了发展

在这里插入图片描述
现在就能看到数据了,这个就相当于一维数组在这里插入图片描述
inplace代表是否在内部进行排序,是就地修改还是不是就地修改在这里插入图片描述在这里插入图片描述在这里插入图片描述
使用降序
在这里插入图片描述
现在可以画图
在这里插入图片描述
排了序所以下降
在这里插入图片描述
试试不排序
在这里插入图片描述在这里插入图片描述
这是用s1直接来画图
在这里插入图片描述在这里插入图片描述
还可以调整颜色在这里插入图片描述
在这里插入图片描述
现在是源源不断生成数据,现在可以不可以发个命令过去把现在的数据展示一下,存到数据库了就可以再拿出来计算

pandas就是数据分析工具,数据结构Series,可以理解为可以把数据装进去
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
pandas底层用的就是numpy
在这里插入图片描述在这里插入图片描述
以后可能要对代码进行一个面向对象的进行封装

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值