python爬取王者荣耀皮肤高清图

python爬取王者荣耀皮肤高清图

前期准备,导入模块

  1. requests
  2. json
  3. os

进入王者荣耀官网,进入游戏壁纸页面,f12进入开发者模式,按照下图找到这个json文件,用于对图片的数据请求。

在这里插入图片描述
忽略这一步也可以,代码里面会给出相应的地址,只是教你思路,授人以鱼不如授人以渔。爬取网站数据都是千变一律的,只是需要对网站结构进行解析。直接上代码

import requests
import json
import os

url1 = 'https://pvp.qq.com/web201605/js/herolist.json'
#发送请求

headers={
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36'
}

data = requests.get(url=url1,headers=headers).json()
# print(type(data))  #json数据

file = input('请建立一个存储图片的文件夹,输入文件夹名称即可')
y = os.path.exists(file)
if y == 1:
    print('该文件已存在,请重新输入')
    file = input('请建立一个存储图片的文件夹,)输入文件夹名称即可')
    os.mkdir(file)
else:
    os.mkdir(file)



for i in range(len(data)):
    ename = data[i]["ename"]  #获取编号
    cname = data[i]["cname"]  #获取英雄

    if ename == 518:    # 马超没有skin_name  忽略
        pass
    else:
        skin_name = data[i]["skin_name"].split("|")  #切割图片 方便计算值
        # print(skin_name)
        skinnum = len(skin_name)
        # print(skin_name)


    for big in range(0,skinnum+1):
        # 发送图片请求
        img_url = "https://game.gtimg.cn/images/yxzj/img201606/skin/hero-info/{}/{}-bigskin-{}.jpg".format(ename,ename,big)
        # print(img_url)
        response = requests.get(img_url,headers=headers)

        with open(file+"/"+cname+"-"+skin_name[big-1]+".jpg","wb") as f:
            f.write(response.content)
            print("正在下载:{}".format(cname+"-"+skin_name[big-1]))


print('完成')

代码很简单,有兴趣的小伙伴可以对代码进行优化,只是提供一个爬取数据的思路。最后看一下效果图吧
在这里插入图片描述
获取王者图片采用的是很简单的一个方式,因为王者荣耀官网提供了一个json文件,图片数据都在里面,其他网站的图片数据需要对网站结构进行解析,这可能需要你懂点前端的东西。这里提供了一个思路,有兴趣的可以参考代码对其他的数据进行爬取。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

又蓝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值