dede 网站建设模板,公司网站建设工作方案,广东卫视新闻联播,潍坊网站推广大家好#xff0c;我是你们的老朋友——南枫#xff0c;今天我们一起来学习一下该如何抓取大家经常玩的游戏——王者荣耀里面的所有英雄的皮肤。 老规矩#xff0c;直接上代码#xff1a;
导入我们需要使用到的#xff0c;也是唯一用到的库#xff1a; 我们要抓取皮肤其…大家好我是你们的老朋友——南枫今天我们一起来学习一下该如何抓取大家经常玩的游戏——王者荣耀里面的所有英雄的皮肤。 老规矩直接上代码
导入我们需要使用到的也是唯一用到的库 我们要抓取皮肤其实就是相当于抓图片那么像这种大网站大批量的图片它基本上是在一个文件里面那么我们首要目的就是要找到这个文件所在地打开浏览器调试面板进行刷新。 刷新之后在XHR中会出现很多文件那么我们所有皮肤图片的地址是在哪呢在哪个文件中呢有些人可能会老老实实的一个个去找那么我教大家一个邪术当然并不适用所有的网站哈。
我们要抓取所有英雄的皮肤图片英雄的英文单词叫啥Hero大批量是不是要用列表装起来那么连起来不就是herolist我们可以去找一下有没有herolist这么一个文件夹。 可以发现的是有这么一个文件夹那么我们秉持着良好的学习探究精神点击进去查看一下看看到底有没有对应的数据。 有明显的数据集继续下去 有些人看到这玩意就懵逼了这啥啊这不都乱码了嘛不要慌不要急咱慢慢来看看数据有没有规律。 可以发现的是他这个ename是在一个一个的增加。我们先保持怀疑态度他到底与我们的项目有没有关系继续去找下一个特征先暂且搁置一边。
我们要抓取的是一张张大图也就是高清无码的皮肤图片比如这样 但我们放大仔细看发现这个并不是我们的目标因为它并不是最大最高清的那么到底在哪呢继续使用邪术高清无码图片不就是大图片嘛大的英文单词是啥Big啊那有没有这么个文件呢 这不是在图片这块有嘛我们双击打开看看 唉非常明显的高清无码大图片了吧但仔细想想我现在只是抓到了一张而已但王者荣耀官网可是有非常多的那我该如何进行批量抓取呢
你们还记得我们开头分析的那个文件嘛就是逐渐1的ename这个数字是不是有什么关系呢我们一起来看下这个目标图片的网址 这个是517再来看看另外的。李信这个英雄是 数字变成了507我们是不是可以大胆的猜测一下这个数字就是我们找到的ename那我们想要拿到每一张高清无码图片的话是不是只要改变这个数字就行了邓小平爷爷说过实践是检验真理的唯一标准我们进行实践不就知道了 改成105是廉颇 改成106是小乔这里就基本确定了如果你还不敢确定的话那你可以去进行多次尝试得到证实。言归正传我们的目标是要下载所有的皮肤图片那么是不是拿到这个链接地址然后给他改变数字就行了直接大胆尝试!
获取到这个文件的所有数据 获取之后他是在列表里面那么我们就可以通过循环拿到列表里面的数据 除了拿到ename之外我们还拿到了cnamecname是什么仔细观察的小伙伴应该已经发现了cname就是每个英雄的名字我们图片保存下来是不是还得要名字那么cname已经给我们写好了我们就不用自己操心了直接提取即可。
提取下来ename数字之后直接进行拼接 这样就拿到了我们每一张图片的地址直接对他们进行二次请求为什么呢就是因为图片是二进制数据而前面的是json数据那么现在获取的是图片就要进行二次请求进行.content。一切准备就绪进行保存。 看看效果 可以看到的是不仅保存下来了并且每一个英雄的名字也没有出现差错你学会没有大家看完之后一定要去进行操作哦。