文章目录

  • 爬取所有英雄头像
    • 选择爬取目标
    • 寻找图片位置
    • 引入selenium和phantomjs
    • 构造xpath对元素定位
    • 获取每个英雄的名字和头像url
    • 最终步骤
  • 爬取装备图片
  • 最后

爬取所有英雄头像


选择爬取目标


这里我们选择
https://lol.qq.com/data/info-heros.shtml

英雄联盟英雄资料

寻找图片位置

通过浏览器的检查功能,寻找图片所在位置



观察发现所有英雄头像都处于"<img src="">"里面
所以,构建正则表达式如下
pattern1='<img src="(.+?)">'
是不是觉得腾讯的东西太简单了?其实,你一爬就会发现根本没有图片后面我发现这里使用的是js动态加载的
经过我反复琢磨,终于发现资源文件都在//lol.qq.com/biz/hero/champion.js

引入selenium和phantomjs

dr = webdriver.PhantomJS()

用phantomjs 解析js

构造xpath对元素定位

img=dr.find_elements_by_xpath('//ul//li//a//img')

获取每个英雄的名字和头像url

观察发现 每个img标签的src属性是url,alt属性是名字

for i in img:i.get_attribute('src')i.get_attribute('alt')

最终步骤

最终代码

from selenium import webdriver
import urllib.request
#无头浏览器
dr = webdriver.PhantomJS()
#打开网页
dr.get('https://lol.qq.com/data/info-heros.shtml')
#xpath定位
img=dr.find_elements_by_xpath('//ul//li//a//img')try:  for i in img:name=i.get_attribute('alt')url=i.get_attribute('src')imgname="D:/picture/"+str(name)+".jpg"#保存进本地urllib.request.urlretrieve(url,filename=imgname)
except urllib.error.URLError as e:#简单异常处理pass#退出浏览器
dr.quit()

结果展示

至此,148个英雄头像爬取完毕


爬取装备图片


装备与英雄的大部分都相同,只需简单几步即可实现爬取装备图片

https://lol.qq.com/data/info-item.shtml

xpath也稍微有点不一样

dr.find_elements_by_xpath('//div//ul//li//img')

装备的名称位于img同级标签

dr.find_elements_by_xpath('//div//ul//li//p')

图片和名字是两个列表

最终代码

try:  j=1 # 因为之前的xpath匹配出来多一个图片,这里从一开始去掉for i in name_list:#遍历name列表name=i.texturl=img_list[j].get_attribute('src')#获取图片urlj=j+1imgname="D:/picture/"+str(name)+".jpg"print(name+url)#保存进本地urllib.request.urlretrieve(url,filename=imgname)
except urllib.error.URLError as e:#简单异常处理pass

成功展示
鞋子和打野刀存在命名重复,会被覆盖一部分

最后

可以关注一下我的公众号,最近开始写公众号,我会在上面分享一些资源和发布一些csdn上发布不了的干货

点个关注是对博主最大的支持

python爬虫工程师 成长之路十 selenium+phantomjs+request爬取lol所有英雄头像和装备图片相关推荐

  1. python爬虫工程师 成长之路八 Selenium WebDriver

    文章目录 Selenium WebDriver 简介 Selenium WebDriver 原理 Selenium WebDriver 安装 Selenium WebDriver 使用 浏览器常用操作 ...

  2. Python爬虫新手入门教学(十八):爬取yy全站小视频

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. Python爬虫.数据分析.网站开发等案例教程视频免费在线观看 https://space. ...

  3. Python爬虫新手入门教学(十六):爬取好看视频小视频

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. Python爬虫.数据分析.网站开发等案例教程视频免费在线观看 https://space. ...

  4. Python爬虫新手入门教学(十五):爬取网站音乐素材

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. Python爬虫.数据分析.网站开发等案例教程视频免费在线观看 https://space. ...

  5. python爬虫工程师 成长之路一 初识爬虫

    文章目录 爬虫简介 为什么要学习爬虫 爬虫的结构 爬虫的类型 聚焦爬虫的工作原理和过程 爬虫常用功能 搜索引擎介绍 用户爬虫 最后 爬虫简介 爬虫,就是网络爬虫,也称为网页蜘蛛.网络机器人.网络蚂蚁等 ...

  6. Python爬虫新手入门教学(十四):爬取有声小说网站数据

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. Python爬虫.数据分析.网站开发等案例教程视频免费在线观看 https://space. ...

  7. 【Python爬虫系列教程 31-100】通过scrapy框架、爬取汽车之家宝马5系图片,学习Images管道

    现在爬取的汽车之家宝马5系车的图片,可以看到在这个网址里面,放了车的不同部位的图片,下面就要将他们爬下来并且保存到不同的文件夹. 首先用到的是pycharm IDE,这个软件可以提高编写代码的效率,因 ...

  8. python爬虫工程师 成长之路六(二) 非结构化数据之lxml库

    文章目录 lxml库 介绍 lxml库 使用 最后 lxml库 介绍 lxml是一个使用python编写的库,处理XML非常方便,另外还支持XPath,(上篇博客的XPath派上用处了XPath 基础 ...

  9. python爬虫工程师 成长之路六(一) 非结构化数据之XPath

    文章目录 XPath 介绍 XPath 节点 XPath 语法 路径表达式 谓语 通配符 选取若干路径 XPath 轴 步(step) XPath 运算符 最后 XPath 介绍 XPath(XML ...

最新文章

  1. JS实现的表单验证和强大的×××
  2. OD使用教程18 - 调试篇18
  3. 虚拟机连接网络_Parallels Desktop 16教程PD16虚拟机共享网络和桥接网络设置方法
  4. ipad和iphone切图_如何在iPhone,iPad和Mac上签名PDF
  5. [转载] 纯函数和函数柯里化
  6. 大数据_Hbase_面试题0001
  7. mysql 随机槽_mysql怎样高效率随机获取n条数据
  8. vue中引用swiper轮播插件
  9. ocr原理 oracle,Oracle技术之RAC Voting disk和OCR的管理
  10. mp3排序软件哪个好用_电脑上有什么录音软件,哪个电脑录音软件好用
  11. 武-NC15522(Dijsktra最短路算法)
  12. 经典文献阅读之--lris(优于Scan Context的回环检测)
  13. 计算机网络钟中PCF,请问,为什么我向时钟芯片PCF8563中写入初始化数据后,读出来...
  14. 分析样布/面料的七个口诀
  15. android 人生日历,人生日历安卓版
  16. 跑步时戴什么耳机好、推荐几款专业跑步的耳机
  17. 使用Dockerfile创建包含nginx-fair和nginx-check模块的nginx镜像
  18. 基于JAVA汽车租赁系统 (Springboot框架) 开题报告
  19. 高通开发系列 - 总目录
  20. 惠普战x适合计算机专业吗,惠普战x锐龙版怎么样?电脑值得入手吗?

热门文章

  1. 2.级数与傅里叶级数
  2. 如何评价美颜api中人脸识别和人脸检测的准确度?
  3. PTA 转段考试 数据库myql (4篇)
  4. HatchBrush笔刷效果
  5. (SQL)查询选修张老师讲授所有课程的学生题解
  6. 【跨境电商】Zendesk最佳替代品,5款客服插件推荐
  7. 广电“科技少年”科普大赛在广州紫泥堂基地圆满闭幕
  8. 滑动平均(Moving Average Models,MA)模型
  9. 做神经网络用哪个笔记本,笔记本能跑神经网络么
  10. ElasticSearch(6.8.6)-es重建索引