利用python爬取LOL全皮肤

关于

在本次的爬虫中会利用到jsonpath,如果有想了解一下jsonpath不妨点一下传送门:https://blog.csdn.net/weixin_45859193/article/details/107081107

爬虫的思路
1.目标url地址
2.获取数据
3.解析数据
4.保存数据
知道这几步,那我们就开始实战吧!

*首先
*进入lol官网
1.点击里面英雄资料库
2.按下f12
3.找到hero_list.js的名字
4.解析他的js数据
json解析库传送门:https://www.json.cn/
5.获取id
6.到达第二层url
7.打开id.js的后缀
8.解析
9.保存

思路大概就是这样具体详细看代码吧,代码注释很多。

#这是一键爬取全部皮肤
import requests
import jsonpath
import os
from urllib.request import urlretrieve
#目标url
url='https://game.gtimg.cn/images/lol/act/img/js/heroList/hero_list.js'
#模拟浏览器
headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36'}
#解析数据
req=requests.get(url,headers=headers).json()

#获取id
id_1_key=jsonpath.jsonpath(req,'$..banAudio')

#定义一个空列表
items=[]

for id_1 in id_1_key:
    #分割id,取出id
    id_2=id_1.split('ban/')[1][0:-4]
    items.append(id_2)

for itme in items:
    #皮肤层的url
    new_url='https://game.gtimg.cn/images/lol/act/img/js/hero/{}.js'.format(itme)
    
    req=requests.get(new_url,headers=headers).json()
    #跳到这个位置
    skins=req["skins"]
    #皮肤
    mainImgs=jsonpath.jsonpath(skins,'$..mainImg')
    #名字
    names=jsonpath.jsonpath(skins,'$..name')
    
    #防止报错
    try:
        #判断英雄名字是否存在
        if not os.path.exists(names[0]):
            #创建英雄名文件夹

            os.mkdir(names[0])

        for name,mainImgs in zip(names,mainImgs):
            #保存数据
            urlretrieve(mainImgs,names[0]+"/"+name+".jpg")
            print(name+"100%")

    except:
        pass
    
                    

在这里插入图片描述
在这里插入图片描述
总结
这个代码其实还是存在bug的,比如有些图片是显示不出来的,还有是下载全部图片而且不能指定下载哪个图片,这些改进的代码等我有时间就把他写出来。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
利用Python爬取养老院数据是一种通过自动化程序获取互联网上关于养老院的信息的方法。Python是一种简单易学的编程语言,具有强大的网络爬取功能,可以帮助我们实现这个目标。 首先,需要选择一个合适的爬虫框架,比如Scrapy或BeautifulSoup。这些框架可以帮助我们简化数据爬取的流程。 接下来,我们需要确定要爬取的养老院的网站。可以从搜索引擎中找到一系列相关的养老院网站,并逐个进行分析。从网站中找到关于养老院的信息,比如名称、地址、电话、服务项目等。 然后,我们需要编写Python代码来实现数据的爬取。首先,需要使用HTTP请求库来向网站发送请求,获取网页源代码。然后,使用解析库来解析网页源代码,提取需要的信息。最后,使用存储库将提取的数据保存到本地或数据库。 在进行爬取过程时,需要注意法律和道德规范。确保遵守网站的爬取政策,以免侵犯他人的权益。爬取过程中也需要注意网站服务器的压力,避免给服务器带来过大的负担。 总结起来,利用Python爬取养老院数据是一种有效的方式,可以帮助我们快速获取互联网上的养老院信息。通过选择合适的爬虫框架和编写相应的代码,可以实现自动化数据爬取,从而节省时间和精力。同时,也需要遵守法律和道德规范,保护个人隐私和网站的正常运营。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值