之前被两个关系很好的朋友拉入了王者荣耀的大坑,奈何技术太差,就想着做一个英雄的随查手册,这样就可以边打边查了。菜归菜,至少得说明咱打王者的态度是没得说的,对吧?大神不喜勿喷!!!感谢!!废话不多说,开始上干货

一 .需要准备的工具

  vscoede,安装好的scrapy框架,浏览器,PhantomJS无界面浏览器(或者chromedriver)

二 . 预期目标

  爬取王者荣耀官网上77位英雄的ID,名字,皮肤名字,生存能力,攻击伤害,技能效果,上手难度(这四项均是百分制),技能信息,技能加点,铭文建议,推荐出装,英雄故事

三 . 制作过程

1.通过命令行创建scrapy文件夹,并且用vscode打开

2.创建基本流程

  items文件

  

  pipeline(管道)文件:

  

这里为了将python中的dict对象按照一定的格式写入文件,这里采用了json模块,关于这个问题,可以参考我的另一篇博文:

  python如何将字典格式化写入文件当中:https://www.cnblogs.com/RosemaryJie/p/12449764.html

  在写入文件的过程中,如果出现乱码的问题,请参考:

  python编码的原理以及写入文件中乱码的问题:https://www.cnblogs.com/RosemaryJie/p/12364099.html

  middleware文件:

  配置浏览器User-Agent  

    如何配置请参考:

    python基于scrapy框架的反爬虫机制破解之User-Agent伪装https://www.cnblogs.com/RosemaryJie/p/12336662.html

  写好这些文件之后一定要记得在settings文件中进行配置

3.页面分析(以孙尚香 香香为例)

  导入的库:

  技能加点部分:

  浏览器所显示出来的XHTML文档部分(检查者工具):

  网页源代码:

  

可以明显看到,检查者工具和网页源代码中关于技能加点部分的源代码是不一样的。这时候我们可以采用selenium模块驱动模拟浏览器来获得我们所需要XHTML文本内容(也就是检查者工具里所呈现出的)

  为了此篇博客的简介,具体相关内容在这里不再赘述,感兴趣的同学可以移步参考此篇博文:

  爬虫如何使用phantomjs无头浏览器解决网页源代码经过渲染的问题(以scrapy框架为例)https://www.cnblogs.com/RosemaryJie/p/12454190.html

这里采用的方法是重新用所获得XHTML文本构建一个新的HtmlResponse对象

解决了浏览器渲染问题之后,剩下的问题就很简单了,常规xpath提取信息而已,在这里就直接上原码了

4.运行爬虫即可

至此,一个实用又装逼的爬虫程序就此大功告成

  

  

四 .效果图:

在做这个爬虫程序的时候,作为小白,也遇到了不少的坑,也算积攒了些许经验。如果有喜欢王者的同好碰到问题的话,也欢迎在评论区留言交流,我也会尽我所能地帮大家大家做一些解答。

码字不易,点个赞再走呗!

手把手教大家如何用scrapy爬虫框架爬取王者荣耀官网英雄资料的更多相关文章

  1. 手把手教你如何新建scrapy爬虫框架的第一个项目(上)

    前几天给大家分享了如何在Windows下创建网络爬虫虚拟环境及如何安装Scrapy,还有Scrapy安装过程中常见的问题总结及其对应的解决方法,感兴趣的小伙伴可以戳链接进去查看.关于Scrapy的介绍 ...

  2. 手把手教你如何新建scrapy爬虫框架的第一个项目(下)

    前几天小编带大家学会了如何在Scrapy框架下创建属于自己的第一个爬虫项目(上),今天我们进一步深入的了解Scrapy爬虫项目创建,这里以伯乐在线网站的所有文章页为例进行说明. 在我们创建好Scrap ...

  3. scrapy爬虫框架爬取招聘网站

    目录结构 BossFace.py文件中代码: # -*- coding: utf-8 -*-import scrapyfrom ..items import BossfaceItemimport js ...

  4. python爬虫---爬取王者荣耀全部皮肤图片

    代码: import requests json_headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win ...

  5. 手把手教你写电商爬虫-第三课 实战尚妆网AJAX请求处理和内容提取

    版权声明:本文为博主原创文章,未经博主允许不得转载. 系列教程: 手把手教你写电商爬虫-第一课 找个软柿子捏捏 手把手教你写电商爬虫-第二课 实战尚妆网分页商品采集爬虫 看完两篇,相信大家已经从开始的 ...

  6. Scrapy爬虫笔记 - 爬取知乎

    cookie是一种本地存储机制,cookie是存储在本地的 session其实就是将用户信息用户名.密码等)加密成一串字符串,返回给浏览器,以后浏览器每次请求都带着这个sessionId 状态码一般是 ...

  7. 【网络爬虫】【python】网络爬虫(五):scrapy爬虫初探——爬取网页及选择器

    在上一篇文章的末尾,我们创建了一个scrapy框架的爬虫项目test,现在来运行下一个简单的爬虫,看看scrapy爬取的过程是怎样的. 一.爬虫类编写(spider.py) from scrapy.s ...

  8. 如何用python爬虫从爬取一章小说到爬取全站小说

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http ...

  9. python-scrapy爬虫框架爬取拉勾网招聘信息

    本文实例为爬取拉勾网上的python相关的职位信息, 这些信息在职位详情页上, 如职位名, 薪资, 公司名等等. 分析思路 分析查询结果页 在拉勾网搜索框中搜索'python'关键字, 在浏览器地址栏 ...

随机推荐

  1. Spring+Struts2+Mybatis整合

    1. 创建项目 2. 添加Spring能力 使用MyEclipse自动加载Struts2和Spring的jar包和配置文件,并在web.xml文件中添加上下文和监听器 web.xml文件如下: < ...

  2. 台式机安装CentOS7.6 Minimal ISO系统并增加图形化桌面

    需求:公司测试环境因业务原因,需要在台式电脑上安装带桌面的CentOS系统,因同事有一个7.6版本Minimal ISO镜像的安装U盘,为了图方便没有去下载everything ISO镜像,而是待同事 ...

  3. Python之路购物车

    #coding:utf-8 wages=raw_input('what are your wages:') lise_commodity=[('apples',50),('orange',55),(' ...

  4. TabActivity中的Tab标签详细设置

    参考链接: http://www.iteye.com/topic/602737 这个写的很不错,我是跟着一步步写下来的,不过到最后也遇到了麻烦,就是不能将Tab标签的文字和图片分开,始终是重合的,而且 ...

  5. React Native 学习笔记--进阶(二)--动画

    React Native 进阶(二)–动画 动画 流畅.有意义的动画对于移动应用用户体验来说是非常必要的.我们可以联合使用两个互补的系统:用于全局的布局动画LayoutAnimation,和用于创建更 ...

  6. 一些大厂的css reset 代码

    不同的浏览器对标签的默认值不同,为了避免页面出现浏览器差异,所以要初始化样式表属性.使用通配符*并不可取,因为会遍历到每一个标签,大型网页会加载过慢,影响性能. 雅虎工程师提供的CSS初始化示例代码: ...

  7. 【线上测试之后的应用】基于MySQL+MHA+Haproxy构建高可用负载均衡数据库集群(详解)

    这里我们先介绍一下MHA是什么,其次就是它的应用与测试,同时为了大家呈现了数据备份案例,最后总结了使用情况以及注意事项和解决办法 一.MHA 概述 MHA(Master High Availabili ...

  8. ubuntu16.04设置开机自启服务

    网上说了开机自启有许多种方法: 1.最简单的是:在/etc/rc.local的exit 0前面加上你启动服务的脚本文件路径 注:这个脚本文件应写绝对路径! 2.网上:修改rc.local开头的#/bi ...

  9. .NET微服务从0到1:服务注册与发现(Consul)

    目录 Consul搭建 基于Docker搭建Consul 基于Windows搭建Consul ServiceA集成Consul做服务注册 Ocelot集成Consul做服务发现 更多参考 Consul ...

  10. python+opencv->边缘提取与各函数参数解析

    前情提要:作为刚入门机器视觉的小伙伴,第一节课学到机器视觉语法时觉得很难理解, 很多人家的经验,我发现都千篇一律,功能函数没解析,参数不讲解,就一个代码,所以在此将搜集的解析和案例拿出来汇总!!! 一 ...