代码教学之获取王者荣耀语音包(附MarkDown格式文档

您所在的位置:网站首页 王者荣耀语言鉴赏怎么用 代码教学之获取王者荣耀语音包(附MarkDown格式文档

代码教学之获取王者荣耀语音包(附MarkDown格式文档

2024-07-10 02:35| 来源: 网络整理| 查看: 265

PS:文章仅供代码技术知识交流,不提供资源,如有任何问题可以私信up删除。

前期调研

我们在闲逛王者官网时,意外发现了有公布全部角色语音的地方:

url:[语音鉴赏-世界观体验站-王者荣耀官方网站-腾讯游戏 (qq.com)](https://pvp.qq.com/ip/voice.html)

每个语音都可以听,并且每个英雄都有对应语音(连梦奇都有,除了盾山[笑])

接口分析

1.获取音频链接

那么我们很好奇这些数据是从哪里来的,打开F12开发者工具,首先在当前页找到对应语音地址,打开看看能否直接加载/下载,如下图所示,很棒,没有任何限制

查找音频地址查找音频地址打开链接直接可以下载打开链接直接可以下载

2.查找当前英雄全部语音的接口

不一会,我们就在F12里找到了疑似包含角色语音的链接接口:[https://pvp.qq.com/zlkdatasys/yuzhouzhan/herovoice/564.json]

点击预览,豁,还真是:

如图,姬小满为564,狂铁为503包含语音地址和语音名字,每个皮肤的语音

然后我们换一个英雄,发现只是换了个id,如下图所示:

如图,姬小满为564,狂铁为503如图,姬小满为564,狂铁为503

那么大胆猜测,每个英雄的语音都可以从这里获得;事实证明也是如此,那么问题的中心就转为了如何获得这些英雄的id。

3.查找页面上全部英雄的数据从哪儿来

毕竟网页上有全部英雄,也可以点击,所以必然是有个数据来源的,我们再找找接口,果不其然,我们找到了:[https://pvp.qq.com/zlkdatasys/yuzhouzhan/list/heroList.json]

一共有114位英雄,注意从0开始(PS有盾山)

然后通过该接口我们就可以获取到每个英雄的id/名称/定位/所属等信息。

代码编写(java

0.代码基础与基础方法

首先呢,得有基础的编程基础,了解json、循环判断、变量设定、方法功能等。 

其次,我们需要提前构造好一些基础架构,比如构建一个maven的项目(非必须,但mvn好引入第三方库),引入阿里巴巴的fastjson库等。

接着,我们自己写好或引入请求页面/下载文件等基础方法(函数)。

1.获取全部英雄列表

获取json的java代码

2.循环获取每个英雄语音列表

3.循环下载每个皮肤里的语音

4.多线程实现并行下载(附代码

计算一下,一个英雄的全部语音大致100个上下,也可能更多,一共有114个英雄,那么起码有1w条以上的语音待我们下载,时间太久了,因此我们加入多线程,此处我们使用25线程并行下载,用时大致为8分钟。

成果展示

共计大小:

按英雄分类:

英雄内按皮肤分类:

语音按对话命名:

语音按对话命名:

笔记文档markdown(wolai笔记):https://www.wolai.com/jLf6UXEJsRWqQMMSJufMU8



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3