明日方舟少人Wiki作战记录的抓取与统计

1. 少人wiki介绍
明日方舟少人Wiki:https://arkrec.wiki B站:明日方舟少人WIKI
一个热爱明日方舟少人玩法的玩家社群所建立的收集明日方舟优秀作战记录的网站。网站依托B站视频,收录各关卡各活动的少人记录;用户可注册账号提交记录,由管理员审核通过后就会展示在相应关卡界面。
目前网站处于初创期,收集的作战记录主要有少人、合约和3/4星队伍。wiki在计划引入各种流派自限队,各种功能会逐步开发完善。
(转自网站介绍)

2. 作战记录抓取与统计
目前网站提供了“按作战”和“按干员”两种查询方式。我们使用python抓取按干员查询的作战数据。原始的单个作战返回值如图:

可以看到提供了很丰富的信息,包括关卡、队伍类型Tag、配队、技能和攻略者等。
为了统计所有干员、作战的信息,这里对队伍类型、配队、地图、攻略者等信息进行分类汇总,以方便下一步处理。
team字段以诸如”夜烟1“的格式记录了配队信息,从这里可以同时提取出干员和技能信息。
但是,注意到方舟的少数干员,名字恰好是另一个干员的前缀/后缀。例如【梅】尔、【阿】米娅、浊心【斯卡蒂】等。在配队中可能会同时出现“梅1”“梅尔2”这样的记录,为了正确区分,设定了一个怪异的正则。
最后汇总的结果如下。
接下来使用matplotlib对结果进行可视化。再用一个脚本将汇总数据处理成matplotlib能接受的列表式数据并排序:

纯python做数据变换确实相当蛋疼,或许numpy里有一些好用的工具?

3. 统计结果
关于统计结果的说明:
- 分别统计了作战数(每条作战记录记一次)和不同地图数(每出现在一张地图上计一次)。同时列出了各技能的使用次数。一部分数据未标注使用何种技能,其中大部分是1技能(例如3星/无精英队伍)
- “常规队”指除少人以外,对配队、练度、打法等不再进行任何限制的队伍,不包括3/4星队、特种队等特殊自限tag
- 受到干员实装时间的影响,新干员的记录数量一般会少于老干员,属于正常现象。
- 算法没有对不同地图的“难度”进行区分。Heggria大佬有打算做一个基于难度加权的统计出来,敬请期待
- 结果仅供参考,不能代表干员普遍强度

6星
温馨提示:点开图片后,把网址png后面的部分去掉即可查看完整尺寸原图


5星(头部)

5星(尾部)


4星(所有队伍,包括4星队)


3星
