详解用selenium来下载小姐姐图片并保存


Posted in Python onJanuary 26, 2021

下载小姐姐图片并保存

  • 请求的地址
  • 伪装
  • 定位元素
  • 下载图片
  • 保存好了

下面开始我们的实战,这个是我们今天访问的url:

url = 'http://pic.netbian.com/4kmeinv/'

1,先把包给导进来:

import requests
from selenium.webdriver import Chrome,ChromeOptions
import os

不知道怎么导包的看我的第一篇,附上链接:
https://3water.com/article/204774.htm

2, 接下来就开始发送请求

#请求的url
 url = 'http://pic.netbian.com/4kmeinv/'
 #进行伪装
 headers = {
 "User_Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36"
 }
 #发起请求
 response = requests.get(url=url,headers=headers)
 #手动设定响应数据的编码格式
 response.encoding = 'utf-8'
 page_text = response.text
 #这个就是再后台上面运行那个浏览器,不在表面上占用你的
 option = ChromeOptions()
 option.add_argument('--headless')
 option.add_argument("--no-sandbox")
 option.add_experimental_option('excludeSwitches',['enable-automation'])
 #这里也要输入
 browser = Chrome(options=option)
 browser.get(url)

相信看过我上篇的都知道这些,那就废话不多说,定位元素:

3,定位:

先看下代码再说:

li = browser.find_elements_by_xpath('//*[@id="main"]/div[3]/ul/li')

老样子,分为三步,第一步选中所选的图片?>copy xpath?>ctrl+f -->粘贴进去可以看到是1of1,但明显我们要的是这个页面上所有的图片,所以呀,只需要改一下就可以啦,将tr[1],里面的包括括号删掉就可以。

详解用selenium来下载小姐姐图片并保存

这样的话就是整个页面内所有的图片啦,

详解用selenium来下载小姐姐图片并保存

4,创建文件以保存我们所要的图片:

#创建一个文件夹
 if not os.path.exists('./小美女图'):
 os.mkdir('./小美女图')

然后再循环一下就好啦:

for i in li:
 img_src = i.find_element_by_xpath('./a/img').get_attribute('src')
 img_name = i.find_element_by_xpath('./a/img').get_attribute('alt')+'.jpg'

至于为什么要这么写,可以看一下我的上一篇博客:

5,保存

img_data = requests.get(url=img_src,headers=headers).content
 img_path = '小美女图/'+img_name
 with open(img_path,'wb') as fp:
  fp.write(img_data)
  print(img_name,'下载成功!!!')

最后的结果哈哈哈哈:这个也不存在什么图片尺寸过大啥的,如果错了,多半是你元素没有定位好。

详解用selenium来下载小姐姐图片并保存

到此这篇关于详解用selenium来下载小姐姐图片并保存的文章就介绍到这了,更多相关selenium 下载图片内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
从零学Python之引用和类属性的初步理解
May 15 Python
Python实现去除列表中重复元素的方法小结【4种方法】
Apr 27 Python
python抓取网页内容并进行语音播报的方法
Dec 24 Python
对dataframe数据之间求补集的实例详解
Jan 30 Python
python实现Virginia无密钥解密
Mar 20 Python
python实现跨excel sheet复制代码实例
Mar 03 Python
详解python环境安装selenium和手动下载安装selenium的方法
Mar 17 Python
Python函数参数分类原理详解
May 28 Python
利用OpenCV中对图像数据进行64F和8U转换的方式
Jun 03 Python
python 最简单的实现适配器设计模式的示例
Jun 30 Python
python中逻辑与或(and、or)和按位与或异或(&、|、^)区别
Aug 05 Python
python 检测nginx服务邮件报警的脚本
Dec 31 Python
selenium与xpath之获取指定位置的元素的实现
Jan 26 #Python
详解Python中的Lock和Rlock
Jan 26 #Python
5分钟快速掌握Python定时任务框架的实现
Jan 26 #Python
Python爬虫自动化爬取b站实时弹幕实例方法
Jan 26 #Python
python 实现的车牌识别项目
Jan 25 #Python
Python实现给PDF添加水印的方法
Jan 25 #Python
2021年值得向Python开发者推荐的VS Code扩展插件
Jan 25 #Python
You might like
PHP UTF8编码内的繁简转换类
2009/07/20 PHP
GBK的页面输出JSON格式的php函数
2010/02/16 PHP
CodeIgniter配置之config.php用法实例分析
2016/01/19 PHP
Zend Framework教程之Loader以及PluginLoader用法详解
2016/03/09 PHP
PHP中$GLOBALS与global的区别详解
2019/03/21 PHP
JavaScript实际应用:innerHTMl和确认提示的使用
2006/06/22 Javascript
jquery tab标签页的制作
2010/05/10 Javascript
js location.replace与location.reload的区别
2010/09/08 Javascript
JS实现定时自动关闭DIV层提示框的方法
2015/05/11 Javascript
jQuery实现点击后标记当前菜单位置(背景高亮菜单)效果
2015/08/22 Javascript
AngularJS整合Springmvc、Spring、Mybatis搭建开发环境
2016/02/25 Javascript
10个最优秀的Node.js MVC框架
2017/08/24 Javascript
JavaScript中重名的函数与对象示例详析
2017/09/28 Javascript
JS实现键值对遍历json数组功能示例
2018/05/30 Javascript
Node.js中的child_process模块详解
2018/06/08 Javascript
JavaScript 防盗链的原理以及破解方法
2020/12/29 Javascript
js实现鼠标拖曳效果
2020/12/30 Javascript
[01:15:12]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#4Newbee VS CDEC
2016/03/03 DOTA
python将xml xsl文件生成html文件存储示例讲解
2013/12/03 Python
Python编程中运用闭包时所需要注意的一些地方
2015/05/02 Python
Python抽象类的新写法
2015/06/18 Python
Python简明入门教程
2015/08/04 Python
python访问mysql数据库的实现方法(2则示例)
2016/01/06 Python
python 垃圾收集机制的实例详解
2017/08/20 Python
python logging日志模块的详解
2017/10/29 Python
python Matplotlib画图之调整字体大小的示例
2017/11/20 Python
Python3 queue队列模块详细介绍
2018/01/05 Python
pandas通过loc生成新的列方法
2018/11/28 Python
对web.py设置favicon.ico的方法详解
2018/12/04 Python
python爬虫beautifulsoup解析html方法
2020/12/07 Python
英国领先的鞋类零售商:Shoe Zone
2018/12/13 全球购物
美国和加拿大计算机和电子产品购物网站:TigerDirect.com
2019/09/13 全球购物
中学教师自我鉴定
2014/02/07 职场文书
高中毕业生的个人自我评价
2014/02/21 职场文书
浅谈:电影《孔子》观后感(范文)
2019/10/14 职场文书
Java循环队列与非循环队列的区别总结
2021/06/22 Java/Android