失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 英雄联盟-英雄信息获取(皮肤-英雄名 背景故事 技能)

英雄联盟-英雄信息获取(皮肤-英雄名 背景故事 技能)

时间:2021-02-18 15:29:07

相关推荐

英雄联盟-英雄信息获取(皮肤-英雄名 背景故事 技能)

爬取英雄联盟数据,搭建英雄本地库(主要是得到数据的方法,后续可自己优化编写代码,录入数据库)

问题1.

获取英雄信息列表。

首先进去英雄联盟官网,

/data/info-heros.shtml#Navi

爬取数据的时候,直接使用代码访问页面,分析html-doc,会发现英雄数据是动态加载的。

那就很可能是ajax请求的了,

现在很重要

F12 --- Network -------清除掉刚刚的所有文件,重新刷新筛选 点击XHR,这个是记录ajax请求的,很快就会发现一个hero_list.js文件,ok解决掉一个问题。/images/lol/act/img/js/heroList/hero_list.js

分析js

{heroId: "1", //英雄IDname: "黑暗之女",//中文名字,代码中Unicode编码alias: "Annie", //英文名title: "安妮", //昵称roles: ["mage"//职业分类,法师,还有tank等等,可以多个],isWeekFree: "0",//是否周免?attack: "2", //攻击(物理)defense: "3", //防御magic: "10", //魔法difficulty: "6",//上手难度selectAudio: "/images/lol/act/img/vo/choose/1.ogg",//选英雄的语音banAudio: "/images/lol/act/img/vo/ban/1.ogg" //被ban的时候的语音},

有了这些数据,就可以搭建一个简易的英雄数据库了。

但是还是少了一些什么,比如英雄头像小图标,英雄皮肤,背景故事等等。

不要着急,下面我们一一解决。

问题2

英雄头像

F12去查看英雄小图标

<img src="///images/lol/act/img/champion/Annie.png" alt="黑暗之女 安妮">可以发现 src中的Annie就是英雄的英文名,上面的js中,可以获取所有的英文名我们挑选其中一个,如赵信,将Annie替换成/images/lol/act/img/champion/XinZhao.png将URL复制到浏览器中,可以成功获取到头像了。

问题3

获取英雄皮肤

先进入英雄详情页,比如我们的港哥 派克

/data/info-defail.shtml?id=555英雄id 555,去对照hero list中的id,一致。随便换一个 @问题1 中有的id,复制到浏览器访问,比如 巴德 432/data/info-defail.shtml?id=432成功进入巴德的详情页

然后我们按照 @问题2的方法去找皮肤,惊奇的发现

432.js,这不就是巴德的ID吗/images/lol/act/img/js/hero/432.js里面有你所有想要的信息,包括问题4的背景故事,皮肤URL还包括技能qwer的详细信息和对线技巧因为太多,这里就不详细介绍每个字段的意思的,对照原网页,应该可以看的明白。

发现没有,其实所有的问题都在XHR中,

一直以为 是要获取js代码,然后再分析,找到请求方法,分析出地址和参数。

如果觉得《英雄联盟-英雄信息获取(皮肤-英雄名 背景故事 技能)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。