详解用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中利用Pandas库处理大数据的简单介绍
Apr 07 Python
Python实现的数据结构与算法之基本搜索详解
Apr 22 Python
在Python中处理字符串之ljust()方法的使用简介
May 19 Python
django通过ajax发起请求返回JSON格式数据的方法
Jun 04 Python
python轻松查到删除自己的微信好友
Jan 10 Python
python 出现SyntaxError: non-keyword arg after keyword arg错误解决办法
Feb 14 Python
Django自定义用户认证示例详解
Mar 14 Python
python 爬虫 批量获取代理ip的实例代码
May 22 Python
python小白学习包管理器pip安装
Jun 09 Python
Python中logging日志的四个等级和使用
Nov 17 Python
python 6种方法实现单例模式
Dec 15 Python
Pytorch1.5.1版本安装的方法步骤
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中预定义的6种接口介绍
2015/05/12 PHP
php格式化json函数示例代码
2016/05/12 PHP
ThinkPHP实现转换数据库查询结果数据到对应类型的方法
2017/11/16 PHP
js脚本学习 比较实用的基础
2006/09/07 Javascript
jQuery 动画基础教程
2008/12/25 Javascript
jquery的flexigrid无法显示数据提示获取到数据
2013/07/19 Javascript
Extjs4实现两个GridPanel之间数据拖拽功能具体方法
2013/11/21 Javascript
三种方式获取XMLHttpRequest对象
2014/04/21 Javascript
用jquery的方法制作一个简单的导航栏
2014/06/23 Javascript
Javascript基础教程之数据类型 (字符串 String)
2015/01/18 Javascript
jQuery+JSON实现AJAX二级联动实例分析
2015/12/18 Javascript
微信小程序 支付简单实例及注意事项
2017/01/06 Javascript
JavaScript中匿名函数的递归调用
2017/01/22 Javascript
在Vue.js中使用Mixins的方法
2017/09/12 Javascript
认识jQuery的Promise的具体使用方法
2017/10/10 jQuery
vue中axios处理http发送请求的示例(Post和get)
2017/10/13 Javascript
jquery实现简易验证插件封装
2020/09/13 jQuery
使用Python的web.py框架实现类似Django的ORM查询的教程
2015/05/02 Python
python轻松查到删除自己的微信好友
2016/01/10 Python
python 文件操作api(文件操作函数)
2016/08/28 Python
python学习之hook钩子的原理和使用
2018/10/25 Python
python调用c++传递数组的实例
2019/02/13 Python
Python使用Pickle模块进行数据保存和读取的讲解
2019/04/09 Python
Python Pandas分组聚合的实现方法
2019/07/02 Python
Python3 列表,数组,矩阵的相互转换的方法示例
2019/08/05 Python
Python3实现zip分卷压缩过程解析
2019/10/09 Python
Pandas实现DataFrame按行求百分数(比例数)
2019/12/27 Python
Python requests.post方法中data与json参数区别详解
2020/04/30 Python
python批量生成身份证号到Excel的两种方法实例
2021/01/14 Python
Html5新增标签有哪些
2017/04/13 HTML / CSS
Sandro Paris美国官网:典雅别致的法国时尚服饰品牌
2017/12/26 全球购物
数控专业应届生求职信
2013/11/27 职场文书
辞职信如何写
2015/02/27 职场文书
建国大业观后感
2015/06/01 职场文书
干货:如何写好工作总结报告!
2019/05/10 职场文书
Spring Data JPA框架持久化存储数据到数据库
2022/04/28 Java/Android