抓饭直播致力于服务大众球迷,提供高清足球直播、NBA直播、世界杯直播等,让体育赛事能给更多热爱的人免费观看,全站点赛事无需会员,无需插件,收集全网最稳定的直播链接提供给全国球迷。联系我们
  • 07-19 17:00 澳北部女联
    汤斯维尔火焰女篮 西南新城海盗女篮
    汤斯维尔火焰女篮 vs 西南新城海盗女篮
    0 0
  • 07-19 15:30 新西兰联
    惠灵顿圣徒 富兰克林公牛
    惠灵顿圣徒 vs 富兰克林公牛
    0 0
  • 07-19 08:30 尼加拉瓜LSB
    拆纳德加 马那瓜雄狮
    拆纳德加 vs 马那瓜雄狮
    0 0
  • 07-19 08:30 尼加拉瓜LSB
    马塔加尔帕印第安人 加勒比海岸
    马塔加尔帕印第安人 vs 加勒比海岸
    0 0
  • 07-19 08:00 波多黎各超
    庞塞 瓜伊纳沃
    庞塞 vs 瓜伊纳沃
    0 0
  • 07-19 08:00 波多黎各超
    阿雷西博 马纳蒂
    阿雷西博 vs 马纳蒂
    0 0
  • 07-19 22:30 球会友谊
    科特布斯 茨维考FC
    科特布斯 vs 茨维考FC
    0 0
  • 07-19 22:00 球会友谊
    基督教体育 基辅迪纳摩青年队
    基督教体育 vs 基辅迪纳摩青年队
    0 0
  • 07-19 22:00 球会友谊
    里奥本 格拉茨青年队
    里奥本 vs 格拉茨青年队
    0 0
  • 07-19 21:30 球会友谊
    鹿斯巴达 罗达JC
    鹿斯巴达 vs 罗达JC
    0 0
  • 07-19 21:00 球会友谊
    RB莱比锡女足 什切青波贡女足
    RB莱比锡女足 vs 什切青波贡女足
    0 0
  • 07-19 20:00 球会友谊
    多特蒙德青年队 法兰克福青年队
    多特蒙德青年队 vs 法兰克福青年队
    0 0
  • 07-19 19:00 球会友谊
    雷丁 米尔沃尔
    雷丁 vs 米尔沃尔
    0 0
  • 07-19 19:00 球会友谊
    水晶宫 查尔顿
    水晶宫 vs 查尔顿
    0 0
  • 07-19 18:00 澳新南联
    赫斯特維爾 卡姆登
    赫斯特維爾 vs 卡姆登
    0 0
抓饭直播 > 体育新闻 > 电竞新闻 > >王者荣耀官网电脑版(用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息)

王者荣耀官网电脑版(用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息)

2023-06-24 00:56

最近迷上了王者荣耀,但是水平太菜了,每次开局还得先看看技能介绍什么的,为了不坑大伙,干脆抓一份资料回来,放自己电脑上随用随查吧!!

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

工具:pycharm、python3.6、requests 库、scrapy 库和 selenium、 PhantomJS 库

目标 url 获取:http://pvp.qq.com/web201605/herolist.shtml 里有所有英雄的列表,抓包,并写入函数

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

分析网页,先写 items.py,主要内容如下:

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

Pipelines.py 内容(最终文件为 json 格式):

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

记得在 settings.py 里面将 ITEM_PIPELINES 打开,并设置 ROBOTSTXT_OBEY 为False(不打开不能保存文件,设置 robotstxt 是跳过网站 ROBOT 协议)

然后就是 spiders 文件下新建一个 hero.py,用来写我们的爬虫,抓取的内容较多,都已经在网页存在,比较简单,注意写入 items 时的格式就好

本次爬虫还有需要改进的地方

  • 技能加点建议部分,是在渲染后写入的,没有能在网页源码中找到相应部分,没办法,用了 selenium+PhantomJS的方式抓取,希望有大神可以帮忙改进!

  • 英雄故事部分,有的英雄详情页的英雄故事所在结构不同,导致出错不得已加了 try方法

需要注意的还有一个地方,每一个英雄详情页面,召唤师技能、装备、铭文是单独一个 json字典,在网页中存在相应的 ID,先抓包然后在网页内匹配 id即可,而职业也是有相应的 id字段,先写到上面,后面调用,如下:

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

其他都很好匹配的,就一层抓取,直接上爬虫代码,因为截长图,效果不好,就分部分截取了,有兴趣的小伙伴可以找我要源码的用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息首先是导入模块部分

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

爬虫入口,有 77个英雄,所以直接写入循环获取每一个英雄的详情页

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

开始写解析函数,先将需要的字典抓包获取

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

实例化 items,开始写入前几个字段

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息技能信息和铭文建议部分用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

技能加点建议、召唤师技能建议部分,注意这里使用了模拟浏览器的方式获取

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

英雄关系和装备推荐部分,其中英雄关系部分其实是一段话,手工分开

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

最后是英雄故事部分

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

运行结束后,生成的文件和解析后内容片段

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

到这里就完成了,有兴趣或者想要源码的小伙伴可以私信我:资料,获取联系方式,咱们一起学习进步哦!

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

不过在这之前,我们先来一把吧!!保证不坑~!

用 python 爬虫框架 scrapy 抓取王者荣耀官网所有英雄信息

  • 上一条: 点点约玩平台(盘点10个海外元宇宙概念App:头部疯狂吸金,中腰部暗暗较劲)
  • 下一条: 王者官网电脑版在线玩(王者荣耀崩了?教你三个方法,轻松解决电脑游戏卡顿问题)
  • 声明:本站文章版权归原作者及原出处所有,并不代表本站赞同其观点及真实性,如有侵权,请联系删除。
    耗时1.147秒