你玩的王者荣耀英雄在比赛中发挥如何呢?

本文介绍了如何通过爬虫技术抓取王者荣耀官方的比赛数据,以赵云为例分析其在近半年的赛场表现,包括PICK场数、KDA、胜率等,并探讨了英雄热度与其在比赛中的相关性。
摘要由CSDN通过智能技术生成

图片

>>前言

小编喜欢玩王者荣耀,但有点菜,所以想了解一下近半年王者荣耀所有英雄的赛事数据,看看自己喜欢玩的英雄在比赛中到底是个什么水平,以及热度前十的英雄是哪些,从中挑选几个适合的来练练。

数据来自王者荣耀官方网站:

https://datamore.qq.com/project/wzmatch/dist/index.html#/

需要登录的:

图片

登陆以后,点击英雄,选择近半年的数据:

图片

可以看到数据是直接可以导出的,比较友好,如果不能直接导出那该怎么办呢,所以我们从爬虫的角度来看看怎么获取数据。

 爬虫

打开开发者工具,我们先翻页看看:

图片

图片

从第一页,第二页的截图看出,url 是没有变化的,说明的动态加载的,需要抓包,在 XHR 选项卡看到,每翻一页就有一个新的包,我们浏览一下,发现数据就在这个包里面:

图片

找到了数据包,就可以写爬虫了,数据包的 url 中关于页数的参数是 page,有 5 页,由此构造所有 url:

图片

循环请求 url,因为请求结果为 json 数据格式,我们需要转换为字典类型,再返回请求结果的数据,需要注意的是请求头是需要带上 cookie 的,因为是登录才能浏览,在数据包中的 Header 选项卡中的 Request Headers 找到:

图片

获得请求数据后,提取数据使用 jsonpath 库,部分提取如下图:

图片

最后需要把数据保存起来,保存为 csv 文件:

图片

最后的保存结果:

图片

这就是整个爬虫流程,其实很简单的。

赵云数据

小编比较喜欢玩的英雄是赵云,七进七出,所以想了解一下赵云在这半年中的相关数据。

首先导入数据:

图片

KDA 是(K+A/D)计算出来的,一般取值为 3 即为正常。

需要处理一下 KDA 的值,我们把 KDA 除以 10 保证和胜率,出场率,Ban率,热度在同一量纲:

图片

接下来选择赵云相关数据,查看 Pick 场数排名,Pick 场数:178,总击杀:506,被 Ban 场数:

图片

上场次数在一定程度上说明了此英雄的受欢迎程度,赵云的上场次数排名第八,看来赵云是一个受欢迎程度不错的英雄。

再来计算一下'场均KDA','胜率','出场率','Ban率','热度'所有英雄的均值,并查看赵云的这些值:

图片

画一个雷达图更清晰的对比:

图片

图片

赵云的场均KDA与平均水平一致,其他的高于平均水平,赵云这种没有低于平均水平的英雄还是值得玩一玩的。

再来看看赵云的 KDA 的占比:

图片

图片

看来这半年的比赛中,赵云这个英雄是受欢迎的,但战斗数据在这半年的比赛中一般般刚好达到平均水平,加上小编的游戏体验赵云这个英雄很强的。

相关性

我们再来看看这些值的两两相关性:

图片

制作相关性热力图更直观一些:

图片

图片

颜色越红,正相关越强,我们来看看几个比较红的区域。

  1. Pick场数越多,热度也越高

  2. 热度越高,英雄的禁用率与禁用场数也会变高

总的来说,热度越高的英雄,在某些对局中让人烦,所以禁用率也较高。

 热度前十英雄

我们计算热度前十英雄:

图片

图片

好了热度前十的英雄原来是这些,小编接下来准备从这些英雄中选择合适的玩一玩练一练了,打上巅峰王者~

  • 21
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值