爬虫-英雄联盟官网-英雄皮肤图片

本文介绍了一种使用Python批量下载《英雄联盟》(LOL)中所有英雄皮肤图片的方法。通过解析官方提供的JSON文件获取英雄ID及名称,并构造皮肤图片URL进行下载。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import os
import json
import re
import requests

def Pifu_Pic():
    Main_js="http://lol.qq.com/biz/hero/champion.js"#返回英雄ID号和英雄的名字
    Hero_link="http://ossweb-img.qq.com/images/lol/web201310/skin/big"#103002.jpg"英雄皮肤的链接,103为英雄ID号,002为图片序列号

    resource=requests.get(Main_js)
    Total_data = resource.content.decode()
    req=r'"keys":(.*?),"data":'
    List_data=re.findall(req,Total_data)
    Dict_data=json.loads(List_data[0])
    Hero_Links=[]
    for heroid,heroname in Dict_data.items():
        for i in range(20):
            num=str(i)
            if len(num)==1:
                Hero_Links.append(Hero_link+heroid+"00"+num+".jpg")
            elif len(num)==2:
                Hero_Links.append(Hero_link+heroid+"0"+num+".jpg")

    for Get_Pic in Hero_Links:
        Pic_Response=requests.get(Get_Pic)
        if Pic_Response.status_code==200:
            leng=len(Get_Pic)-54
            Pic_Hero_id=Get_Pic[-leng:-7]
            Pic_Hero_num=Get_Pic[-7:-4]
            Pic_Hero_name=Dict_data[Pic_Hero_id]
            if not os.path.exists('./pic'):
                os.mkdir('pic')
            with open ('./pic/'+Pic_Hero_name+Pic_Hero_num+'.jpg','ab') as f:
                Pic_data=requests.get(Get_Pic)
                f.write(Pic_data.content)


if __name__ == '__main__':
    Pifu_Pic()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值