嗖的一下第二弹,这些好看的皮肤直接一键收下~~

✨前言


📢首先祝大家假期愉快🚀
这个假期,大家是怎么玩的呢❓
小博主我趁着假期也摆了几天😜
因此有好几天没有更新文章了……
在这里插入图片描述
今天偷偷的发一篇文章,浅浅做个样子吧😬
今儿写的文章是继上次写的:
这些好看的皮肤,这不嗖的一下,统统都到电脑里了~
嗖的一下系列的更新💨

主要实现的是多线程获取LOL英雄皮肤图片

👉话不多说,直接开始👇

🎮代码实现

import requests
import json
from jsonpath import jsonpath
import os
import threading


# 获取英雄基本信息
def get_info():
    # 英雄列表链接
    url = 'https://game.gtimg.cn/images/lol/act/img/js/heroList/hero_list.js?ts=2774774'
    # 发送请求,并将html转为json格式
    json_data = json.loads(requests.get(url, headers=headers).text)
    # 获取英雄名
    name = jsonpath(json_data, '$..name')
    # 获取英雄id
    heroID = jsonpath(json_data, '$..heroId')
    return name, heroID


# 获取英雄皮肤
def get_skin(name, heroID):
    # 创建对应英雄文件
    file_path = f'./lol英雄皮肤/{name}'
    if not os.path.exists(file_path):
        os.makedirs(file_path)

    n = 0
    while True:
        # 拼接链接
        url = f'https://game.gtimg.cn/images/lol/act/img/skin/big{int(heroID)*1000+n}.jpg'
        res = requests.get(url, headers=headers)
        if res.status_code == 200:
            with open(f'{file_path}/{name}-{n}.jpg', 'wb') as f:
                f.write(res.content)
        else:
            break
        n += 1

    print(f'{name} 皮肤下载完成')

if __name__ == '__main__':
    if not os.path.exists('./lol英雄皮肤'):
        os.makedirs('./lol英雄皮肤')

    # 构建请求头
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36'
    }

    # 调用获取英雄名和id的函数
    name, heroID = get_info()

    threads = []
    for i in range(len(name)):
        t = threading.Thread(target=get_skin(name[i], heroID[i]))
        threads.append(t)

    for t in threads:
        t.start()

  • 实现效果
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

街 三 仔

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

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

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

打赏作者

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

抵扣说明:

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

余额充值