当前位置: 首页 > news >正文

Python爬虫实战案例——王者荣耀皮肤抓取

大家好,我是你们的老朋友——南枫,今天我们一起来学习一下该如何抓取大家经常玩的游戏——王者荣耀里面的所有英雄的皮肤。

图片

老规矩,直接上代码:

导入我们需要使用到的,也是唯一用到的库:

图片

我们要抓取皮肤其实就是相当于抓图片,那么像这种大网站,大批量的图片它基本上是在一个文件里面,那么我们首要目的就是要找到这个文件所在地,打开浏览器调试面板,进行刷新。

图片

刷新之后在XHR中会出现很多文件,那么我们所有皮肤图片的地址是在哪呢?在哪个文件中呢?有些人可能会老老实实的一个个去找,那么我教大家一个邪术,当然并不适用所有的网站哈。

我们要抓取所有英雄的皮肤图片,英雄的英文单词叫啥?Hero,大批量是不是要用列表装起来?那么连起来不就是herolist?我们可以去找一下有没有herolist这么一个文件夹。

图片

可以发现的是,有这么一个文件夹,那么我们秉持着良好的学习探究精神点击进去查看一下,看看到底有没有对应的数据。

图片

有明显的数据集,继续下去!

图片

有些人看到这玩意就懵逼了,这啥啊?这不都乱码了嘛,不要慌,不要急,咱慢慢来,看看数据有没有规律。

图片

图片

图片

可以发现的是,他这个ename是在一个一个的增加。我们先保持怀疑态度,他到底与我们的项目有没有关系,继续去找下一个特征,先暂且搁置一边。

我们要抓取的是一张张大图,也就是高清无码的皮肤图片,比如这样:

图片

但我们放大仔细看发现,这个并不是我们的目标,因为它并不是最大,最高清的,那么到底在哪呢?继续使用邪术!!!高清无码图片,不就是大图片嘛?大的英文单词是啥?Big啊!!!那有没有这么个文件呢?

图片

这不是在图片这块有嘛?我们双击打开看看

图片

唉,非常明显的高清无码大图片了吧,但仔细想想,我现在只是抓到了一张而已,但王者荣耀官网可是有非常多的,那我该如何进行批量抓取呢?

你们还记得我们开头分析的那个文件嘛?就是逐渐+1的ename?这个数字是不是有什么关系呢?我们一起来看下这个目标图片的网址:

图片

这个是517,再来看看另外的。李信这个英雄是:

图片

数字变成了507!我们是不是可以大胆的猜测一下,这个数字就是我们找到的ename?那我们想要拿到每一张高清无码图片的话,是不是只要改变这个数字就行了?邓小平爷爷说过:实践是检验真理的唯一标准!我们进行实践不就知道了?

图片

改成105是廉颇!

图片

改成106是小乔!!!这里就基本确定了,如果你还不敢确定的话,那你可以去进行多次尝试得到证实。言归正传,我们的目标是要下载所有的皮肤图片,那么是不是拿到这个链接地址,然后给他改变数字就行了?直接大胆尝试!

获取到这个文件的所有数据:

图片

获取之后他是在列表里面,那么我们就可以通过循环拿到列表里面的数据:

图片

除了拿到ename之外,我们还拿到了cname,cname是什么?仔细观察的小伙伴应该已经发现了,cname就是每个英雄的名字,我们图片保存下来是不是还得要名字?那么cname已经给我们写好了,我们就不用自己操心了,直接提取即可。

提取下来ename数字之后,直接进行拼接:

图片

这样就拿到了我们每一张图片的地址,直接对他们进行二次请求,为什么呢?就是因为图片是二进制数据,而前面的是json数据,那么现在获取的是图片,就要进行二次请求,进行.content。一切准备就绪,进行保存。

图片

看看效果:

图片

可以看到的是,不仅保存下来了,并且每一个英雄的名字也没有出现差错!你学会没有?大家看完之后一定要去进行操作哦。

相关文章:

Python爬虫实战案例——王者荣耀皮肤抓取

大家好,我是你们的老朋友——南枫,今天我们一起来学习一下该如何抓取大家经常玩的游戏——王者荣耀里面的所有英雄的皮肤。 老规矩,直接上代码: 导入我们需要使用到的,也是唯一用到的库: 我们要抓取皮肤其…...

PyTorch计算机视觉实战:目标检测、图像处理与深度学习

本书基于真实数据集,全面系统地阐述现代计算机视觉实用技术、方法和实践,涵盖50多个计算机视觉问题。全书分为四部分:一部分介绍神经网络和PyTorch的基础知识,以及如何使用PyTorch构建并训练神经网络,包括输入数据缩放…...

4D 生物打印:将时间维度融入,打造个性化动态组织

4D 生物打印技术将时间维度融入 3D 生物打印,赋予打印出的结构动态变化的能力,使其更接近于真实组织和器官的特性。要实现这一目标,需要使用智能生物材料和智能设计策略。 智能生物材料 目前用于 4D 生物打印的智能生物材料主要包括形状记忆…...

银行清算业务功能测试解析

银行清算业务是指银行间通过账户或有关货币当地清算系统,在办理结算和支付中用以清讫双边或多边债权债务的过程和方法。按地域划分,清算业务可分为国内联行清算和国际清算。常见的清算模式包括实时全额清算、净额批量清算、大额资金转账系统及小额定时清…...

CVE-2024-6387漏洞预警:尽快升级OpenSSH

OpenSSH维护者发布了安全更新,其中包含一个严重的安全漏洞,该漏洞可能导致在基于glibc的Linux系统中使用root权限执行未经身份验证的远程代码。该漏洞的代号为regreSSHion,CVE标识符为CVE-2024-6387。它驻留在OpenSSH服务器组件(也…...

学习整理在php中使用PHPExcel读取excel表列数大于Z时读取不到的解决方案

php读取excel列数大于Z时读取不到 背景解决方案关键代码 背景 表格数据超过26列, 也就是在Z列之前没有AA列及以后的情况, 测试一直都没有问题,超过,就会获取不到数据了 解决方案 private function getExcelData(){//获取excel文…...

python sklearn机械学习-数据预处理

🌈所属专栏:【机械学习】✨作者主页: Mr.Zwq✔️个人简介:一个正在努力学技术的Python领域创作者,擅长爬虫,逆向,全栈方向,专注基础和实战分享,欢迎咨询! 您…...

搜索引擎常用语法

引号 (" "): 用双引号将词组括起来,搜索引擎将返回包含完全相同短语的结果。 示例:"人工智能发展趋势" 减号 (-): 在关键词前加上减号可以排除包含特定词语的结果。 示例:人工智能 -机器学习(排除包含 “机器…...

华为智能驾驶方案剖析

华为ADS智驾方案始终坚持激光雷达毫米波雷达摄像头的多传感器融合路线,行业降本压力下硬件配置从超配逐步转向贴合实际需求,带动整体硬件成本下降。 1)单车传感器数量呈现下降趋势,包括激光雷达从3个减配至1个、毫米波雷达从6R减配至3R、摄像…...

DDR3(一)

目录 1 SDRAM1.1 同步动态随机存储器1.2 位宽1.3 SDRAM结构1.4 SDRAM引脚图 2 SDRAM操作指令2.1 读写指令2.2 刷新和预充电2.3 配置模式寄存器2.4 读/写突发2.5 数据屏蔽 SDRAM是DDR3的基础,在学习DDR3之前,我们先来学习一下SDRAM的相关知识。 1 SDRAM …...

Eureka与Spring Cloud Bus的协同:打造智能服务发现新篇章

Eureka与Spring Cloud Bus的协同:打造智能服务发现新篇章 在微服务架构中,服务发现是实现服务间通信的关键机制。Eureka作为Netflix开源的服务发现框架,与Spring Cloud Bus的集成,提供了一种动态、响应式的服务治理解决方案。本文…...

Kafka入门到精通(三)-Kafka

Kafka简介 Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动&#xf…...

高校教师教学质量评估系统-计算机毕业设计源码03344

摘要 在高等教育中,教学质量是培养优秀人才的关键。为了提高教学质量,高校需要建立一套科学、有效的教师教学质量评估系统。本研究采用 SSM技术框架,旨在开发一款高校教师教学质量评估系统。 SSM框架作为一种成熟的Java开发框架,具…...

币界网讯,预计以太坊现货 ETF 将于 7 月中旬推出

刚刚 ETF Store 总裁 Nate Geraci 在 X (前Twitter)平台上宣布,备受数字货币市场期待的SEC以太坊现货 ETF提案,将于7 月中旬通过美国证券交易委员会(SEC)批准。Nate Geraci透露修订后的 S-1 文件将于 7 月 …...

【FFmpeg】avio_open2函数

【FFmpeg】avio_open2函数 1.avio_open21.1 创建URLContext(ffurl_open_whitelist)1.1.1 创建URLContext(ffurl_alloc)1.1.1.1 查找合适的protocol(url_find_protocol)1.1.1.2 为查找到的URLProtocol创建UR…...

技术成神之路:设计模式(二)建造者模式

1.定义 建造者模式(Builder Pattern)是一种创建型设计模式,它允许你分步骤创建复杂对象,而不必直接调用构造函数。建造者模式特别适合那些包含多个组成部分并且构造过程复杂的对象。 2. 结构 建造者模式的主要组成部分包括&#…...

基于Springboot+Vue+mysql仓库管理系统仓库进销存管理系统

博主介绍: 大家好,本人精通Java、Python、C#、C、C编程语言,同时也熟练掌握微信小程序、Php和Android等技术,能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验,能够为学生提供各类…...

爬虫scrapy库精简使用大全

一、基本命令 创建项目 scrpay startproject myapp创建爬虫文件 scrapy genspider spider_name "https://www.baidu.com"运行爬虫文件 scrapy crawl spider_name一、使用代理ip 打开中间件middlewares.py,增加以下代码 class ProxyMiddleware:def process…...

Qt - 如何在新线程 (QThread)中使用一个进程 (QProcess)?

在Qt中,QThread 用于处理后台任务,而 QProcess 用于启动和管理外部程序。如果你想在一个新的 QThread 中使用 QProcess,你需要了解 QProcess 并不是专门为在特定线程中运行而设计的。实际上,QProcess 通常在创建它的线程&#xff…...

Qt绘制多线段

最近画辅助线有刚需。 画图准备增加绘制多线段功能。 有哪些方法呢&#xff1f; QPainter Class | Qt GUI 5.15.17 void QPainter::drawPolyline(const QPolygon &points) QPolygon Class | Qt GUI 5.15.17 QPolygon polygon; polygon << QPoint(10, 20) <&…...

手把手教你用Node.js和Bun配置Cursor AI与Figma的MCP通信(附完整避坑清单)

从零构建Cursor AI与Figma的MCP通信桥梁&#xff1a;Node.jsBun全链路配置指南 当设计工具与AI代码助手实现双向通信时&#xff0c;创意工作流将迎来革命性变化。本文面向具备Node.js基础的前端/全栈开发者&#xff0c;深入解析如何搭建Cursor AI与Figma间的MCP协议通信通道。…...

如何快速掌握Windows文件夹色彩管理:Folcolor免费工具终极指南

如何快速掌握Windows文件夹色彩管理&#xff1a;Folcolor免费工具终极指南 【免费下载链接】Folcolor Windows explorer folder coloring utility 项目地址: https://gitcode.com/gh_mirrors/fo/Folcolor 你是否曾在密密麻麻的黄色文件夹中迷失方向&#xff1f;每天花费…...

Claude Code 用了半年才发现,原来上下文烧没了自己根本不知道!

点击上方卡片关注我设置星标 学习更多AI出海知识用 Claude Code 最怕什么&#xff1f;不是它写错代码&#xff0c;那改改就好。最怕的是写着写着突然质量暴跌&#xff0c;前面说好的逻辑它不认了&#xff0c;该记住的上下文全忘了&#xff0c;然后你反应过来&#xff1a;上下文…...

新书推荐:《尊严的颓败》在废墟之上,寻找灵魂的微光

当世界沦为巨大的名利场&#xff0c;当人被简化为数据与欲望的载体&#xff0c;我们该如何定义“人”&#xff1f;又该如何安放那颗被称为“灵魂”的种子&#xff1f;洛本的《尊严的颓败》并非一本让人阅读时感到轻松愉悦的书&#xff0c;它更像是一把手术刀&#xff0c;精准地…...

杰理之人声消除额外保留部分频率声音办法【篇】

将原始声音分为两份&#xff0c;一份走原先的人声消除&#xff0c;另一份走EQ调节 最后输出声音 原先人声消除效果&#xff08;左-右&#xff09; EQ调节后声音...

FanControl深度应用指南:从噪音溯源到智能散热系统搭建

FanControl深度应用指南&#xff1a;从噪音溯源到智能散热系统搭建 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/f…...

企业高效知识体系:8大核心特征+可落地搭建框架,告别知识散乱

对于企业而言&#xff0c;知识从来不是“文件堆”&#xff0c;而是能支撑业务、培养新人、规避风险的核心资产。很多企业陷入“文档满天飞、新人没人带、老员工离职带跑经验”的困境&#xff0c;本质是没有搭建起高效、完整的知识体系。今天就一次性讲透&#xff1a;一个能真正…...

从单体到微服务:用Ruoyi-Vue-Plus框架快速搭建多租户后台系统(含AI模块开发避坑指南)

从单体到微服务&#xff1a;Ruoyi-Vue-Plus框架的多租户实战与AI模块开发精要 当企业级应用需要同时服务多个客户群体时&#xff0c;如何确保数据隔离与系统性能的平衡成为架构设计的核心挑战。Ruoyi-Vue-Plus作为一款基于Spring Boot的快速开发框架&#xff0c;其多租户实现机…...

aircrack-ng使用教程

aircrack-ng是一款用于无线网络安全评估的工具套件&#xff0c;主要用于破解WEP和WPA/WPA2-PSK加密的无线网络密码。它通过分析捕获的数据包&#xff0c;利用密码破解技术来获取网络密钥&#xff0c;是网络安全测试和渗透测试中常用的工具之一。该工具支持多种攻击模式和优化选…...

Python 字典遍历全攻略:5 种常用方法 + 性能对比 + 实战优化技巧

在 Python 开发中&#xff0c;字典&#xff08;dict&#xff09; 是最常用的数据结构之一&#xff0c;以键值对形式存储数据&#xff0c;具备查询快、易操作的特点。而字典的遍历是日常开发中高频操作 —— 从简单的数据读取&#xff0c;到大规模数据处理、接口返回值解析&…...