前两天看到同学用python爬下来LOL的皮肤图片,感觉挺有趣的,我也想试试,于是决定来爬一爬王者荣耀的英雄和皮肤图片。

然后,简单的分析一下结构,看看是否有反爬机制。

之后,在上网查阅资料后,发现所有的英雄编号,名字和皮肤都存放在一个叫herolist.json的文件中,但是我打开这个文件却是一堆意义不明的符号,不过这并不影响我们继续。

接下来我们点击进入英雄的详情页面,发现皮肤的地址都是相同格式的

我们不难发现其中的规律,那么接下来我们就要开始写代码了。

完整代码如下:

import requests

import json

import os

import time

start = time.time()

url = requests.get('http://pvp.qq.com/web201605/js/herolist.json').content

jsonFile = json.loads(url) # 提取json

x = 0 # 计数器,记录下载了多少张图片

# 创建目录

hero_dir = 'D:\wzry\wzry'

if not os.path.exists(hero_dir):

os.mkdir(hero_dir)

try: #使用一个简单的异常处理,防止代码在运行时出现错误

for m in range(len(jsonFile) - 1):

ename = jsonFile[m]['ename'] # 编号

cname = jsonFile[m]['cname'] # 英雄名字

skinName = jsonFile[m]['skin_name'].split('|')

skinNumber = len(skinName)

# 下载图片,构造图片网址

for bigskin in range(1, skinNumber + 1):

urlPicture = 'http://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/' + str(ename) + '/' + str(

ename) + '-bigskin-' + str(bigskin) + '.jpg'

picture = requests.get(urlPicture).content # 获取图片的二进制信息

with open(hero_dir + cname + "-" + skinName[bigskin - 1] + '.jpg', 'wb') as f: # 保存图片

f.write(picture)

x = x + 1

print("正在下载第" + str(x) + "张图片")

except Exception:

print()

else:

print()

下面是我的运行结果

python爬取王者皮肤别人可以看见效果吗_利用python爬取王者荣耀英雄皮肤图片相关推荐

  1. python编写递归函数、求斐波那契数列_利用Python实现斐波那契数列的方法实例

    今天我们来使用Python实现递归算法求指定位数的斐波那契数列 首先我们得知道斐波那契数列是什么? 斐波那契数列又叫兔子数列 斐波那契数列就是一个数列从第三项开始第三项的值是第一项和第二项的和依次类推 ...

  2. python通过内置的什么函数打开一个文件_利用python进行文件操作

    这篇文章主要介绍了如何利用python进行文件操作,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下 什么是文件 文件是系统存储区域的一个命名位置,用来存储一些信息,便于后续访问.能够在非 ...

  3. bs4爬取的时候有两个标签相同_利用Python爬取OPGG上英雄联盟英雄胜率及选取率信息!...

    一.分析网站内容 本次爬取网站为opgg,网址为:" http://www.op.gg/champion/statistics " 由网站界面可以看出,右侧有英雄的详细信息,以Ga ...

  4. python实现录音并去燥_python实现录音并去燥_利用Python进行录音和音频分析

    pyaudio简介 Python有个很强大的处理音频的库pyqudio, 使用pyaudio库可以进行录音,播放,生成wav文件等等.更多介绍可以查阅官方文档. pyaudio安装 各平台安装方法 w ...

  5. python计算并返回任意多个整数的和_利用Python的多重处理方法计算一个长输入lin的整数和...

    使用Unix系统的一个名为forking的功能,您可以从父进程读取(而不是写入)数据,开销为零.通常,您将不得不复制数据,但是在Unix中分叉一个进程允许您绕过这个问题. 使用此方法,池中的作业可以访 ...

  6. 教你用python爬取王者荣耀英雄皮肤图片,并将图片保存在各自英雄的文件夹中。(附源码)

    教你用python爬取王者荣耀英雄皮肤图片,并将图片保存在各自英雄的文件夹中.(附源码) 代码展示: 保存在各自的文件夹中 美么? 让我们开始爬虫之路 开发环境 windows 10 python3. ...

  7. Python爬虫——手把手教你爬取王者荣耀英雄皮肤

    大家好!我是霖hero 大家知道目前最火的手游是哪个嘛,没错,就是王者荣耀,这款手游想必大家都听过或者玩过吧,里面有106个英雄,几百个英雄皮肤,今天我来手把手教你们把几百个皮肤都爬取下来. 目录 P ...

  8. Python爬取 | 王者荣耀英雄皮肤海报

    这里只展示代码,具体介绍请点击下方链接. Python爬取 | 王者荣耀英雄皮肤海报 import requests import re import os import time import wi ...

  9. python 山脊图_爬虫:带你一键爬取王者荣耀英雄皮肤壁纸

    一.前言 王者荣耀这款手游,想必大家都玩过或听过,游戏里英雄有各式各样的皮肤,制作得很精美,有些拿来做电脑壁纸它不香吗.本文带你利用Python爬虫一键下载王者荣耀英雄皮肤壁纸. 1. 目标 创建一个 ...

最新文章

  1. Rstudio连接spark失败
  2. 2014广州赛区比赛总结
  3. Python函数的可变参数传递(*args与**kwargs)
  4. 如何判定括号是否匹配
  5. Android日历视图
  6. css元素居中的几种方式
  7. JDK8帮助文档生成-笔记
  8. 初中英语语法(002)-be动词和一般动词的一般现在时
  9. 《动森》为何流行:“我就是想找个地方待着”
  10. molecule html5 游戏,精选超炫html5网站收集
  11. 浅学 --------- CSS
  12. linux kettle命令,Linux下用命令来执行kettle文件资源库的文件ktr与kjb的方法
  13. 基于Google Earth Engine的Landsat单窗算法地表温度(LST)反演
  14. 在线测试输入输出语法的测试
  15. break语句和continue语句的区别
  16. lambda表达式无法抛出异常_Lambda 异常处理
  17. 什么是.svn文件? SVN使用说明
  18. 大疆口袋相机美颜怎么设置_大疆(DJI)Pocket2 | 深度测评口袋相机:超多配件随心搭,自带美颜的拍摄助手!-极果...
  19. UE4 Material_01:堡垒之夜砍伐树木效果
  20. 计算机网络--验证性实验

热门文章

  1. oracle中的job定时任务(原地址:http://blog.csdn.net/ysc1123/article/details/50593667)
  2. 求助!偏相关分析的这个图是怎么做出来的?
  3. PA 认证考试报考流程
  4. 湖北沙洋中学2021年6月高考成绩查询,沙洋中学——湖北省示范高中
  5. BA各子系统控制原理
  6. 【基于python版本的连续英文分词实现java版本的英文分词器】
  7. 【笔记】使用OrCAD对电路进行优化
  8. win10战地3无法运行
  9. 战地三服务器找不到了,战地3进不了游戏怎么办_战地3处理PunkBuster(PB)不能进游戏问题_快吧单机游戏...
  10. 歌曲信息管理系统c语言代码,歌曲信息管理系统_通用完整版.doc