admin管理员组

文章数量:1619286

写在前面: 自学py已经快两个多月了吧,作为新手,就是敢于尝试,之前有看到有人抓取王者荣耀皮肤的,但是作为一个联盟老玩家,还是想搞一个抓取联盟皮肤的,下面分享一下我自己的学习经过,如果有错误或者建议,欢迎下面留言提出。

进入官网

抓取的网站如下:
英雄联盟资料库

然后我们通过开发者模式F12 ,可以看到箭头指向的一个文件
如果没看到的话,刷新一下页面就出来了

 url0="https://game.gtimg/images/lol/act/img/js/heroList/hero_list.js"
    try:
        r=requests.get(url0)
        r.raise_for_status()
        r.encoding=r.apparent_encoding
        herolist=r.json()  #转换为josn格式
    except:
       print("爬取失败:")

然后我试着请求一下len(herolist),结果返回一个4,这就很纳闷了,按道理应该是147位英雄吧,接着直接打印出来herolist
这里只是截取部分打印信息:

{
   'hero': [{
   'heroId': '1', 'name': '黑暗之女', 'alias': 'Annie', 'title': '安妮', 'roles': 

现在就很清楚了,他是写在了"hero"里面,然后稍微修改了一下
代码如下

def getjosn():
    url0="https://game.gtimg/images/lol/act/img/js/heroList/hero_list.js"
    try:
        r=requests.get(url0)
        r.raise_for_status()
        r.encoding=r.apparent_encoding
        herolist=r.json()  #转换为josn格式
    except:
       print("爬取失败:")
    print(herolist)
    herolists=herolist["hero"]    #获得hero对应的字典类型
    heronumber=list(map(lambda x:x["heroId"],herolists))  #获得英雄的编号列表
    heroname=list(map(lambda x:x[

本文标签: 原画皮肤英雄简单玩家