2021-07-14

python下载王者荣耀英雄皮肤

王者荣耀英雄皮肤下载

王者荣耀游戏玩家很多,每个英雄有很多漂亮的皮肤.使用皮肤在游戏中有好看的加载图片,在游戏运行中也有好看的特效,在王者荣耀官网有这所有英雄的皮肤原画,喜欢的小伙伴也可以在那里下载皮肤图片做壁纸.

位置:王者荣耀英雄资料

  1. 在网址页面打开检查 ,谷歌浏览器,右键菜单里最后一个就是检查;
  2. 找到皮肤资料数据在检查中切换到network,里面都是动态加载的数据,所以当网页加载完成后切换到network里面是空的。所以我们在打开network后将网页刷新一下。在过滤器里选择xhr,在里面找到一个herolist.json的文件这里存放着英雄皮肤的数据;
  3. 请求herolist.json通过请求文件地址,获取储存着英雄皮肤的数据文件.`
import pprint
import requests
import re
import os
url_hero_list = 'https://pvp.qq.com/web201605/js/herolist.json
headers = {
    'x-requested-with': 'XMLHttpRequest',
    'referer': 'https://pvp.qq.com/web201605/herolist.shtml',
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.85 Safari/537.36'
}
#请求王者荣耀英雄的json数据
response = requests.get(url=url_hero_list, headers=headers)
pprint.pprint(response.json())
heros = response.json()
  1. 通过打印的结果,可以看出列表里每个参数都是一个英雄资料对应的字典,
  2. 在英雄皮肤界面点开两个英雄皮肤的原始地址
    http: // game.gtimg.cn / images / yxzj / img201606 / skin / hero - info / 105 / 105 - bigskin - 3.jpg
    http: // game.gtimg.cn / images / yxzj / img201606 / skin / hero - info / 538 / 538 - bigskin - 2.jpg
    可以看出字典里字段"ename"就是对应英雄网址里hero-info后面的两个数字,所以可以提取出来用来构建每个英雄对应的皮肤网址。同时,每个英雄的不同皮肤由bigskin后面的数字控制。字典里的字段skin_name里就储存着对应英雄的皮肤名称,名称用“|”隔开,所以可以将对应字段取出来并且通过字符串的格式化方法将字段按|分开,从格式化后的列表里获取皮肤数量和名称`# 遍历英雄数据

f

or hero in heros:
	key = 1

#提取英雄名称
	cname = hero['cname']

 #提取英雄对应网页地址参数
	ename = hero["ename"]

	try:
    	skin_name = hero['skin_name'].split("|")
	except Exception as e:
    	print(e)`
  1. 通过够遍历出的数据,构建出每个图片的网址,请求和保存`
 for skin in range(len(skin_name)):

       for skin in range(len(skin_name)):
        	hero_url = f'https://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/{ename}/{ename}-bigskin-{skin + 1}.jpg'

        	hero_response = requests.get(url=hero_url, headers=headers)

        	print(f"正在下载第{skin+1}张图片")
        	with open(f'王者皮肤\\{skin_name[skin]}{skin + 1}.jpg', mode="wb") as f:
	           	 f.write(hero_response.content)
print("皮肤下载完成")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值