前言

今天我们巩固一下前面学过的知识,通过Selenium+Firefox实现模拟浏览器并自动翻页,爬取图片并写入本地文件中。

以搜索“女装”为例,自动爬取“女装”展示页面的前五页图片信息,先看一下爬取到的图片:

运行后浏览器的显示效果(我只截取了一部分):

本文学习要点:

  • 掌握selenium+Firefox的常见用法

  • Selenium下拉滚动+翻页

  • 会在浏览器上查看审查元素(浏览器右键-->检查)

    例如我们定位搜索框:

  • xpath语法

  • 图片写入本地文件

实战

直接上源码:


# coding=utf-8
from selenium import webdriver
import requests
import  os
from  lxml import  etree
import time#页面交互
def getPhoto():# 路径,可以更改成你的路径path = 'C://Users/Administrator/Desktop/美女图片/'try:driver = webdriver.Firefox()driver.get('https://www.taobao.com/')# 隐示等待,为了等待充分加载好网址driver.implicitly_wait(5)# 定位到搜索框write = driver.find_element_by_class_name("search-combobox-input")# 输入"女装"write.send_keys("女装")# 点击搜索driver.find_element_by_class_name('search-button').click()time.sleep(2)# 爬取淘宝"女装"前五页的图片数据for i in range(1, 6):time.sleep(1)# 下拉滚动条,分3次拉到底部for j in range(1, 4):driver.execute_script("window.scrollBy(0,1600)")time.sleep(2)# print(driver.page_source)# 解析selector = etree.HTML(driver.page_source)# 获取到女装图片的URL集合photo_urls = selector.xpath('//div/div/div/div/a/img/@src')# 把图片写入本地文件for item in photo_urls:if not os.path.exists(path):os.makedirs(path)print("path创建成功")data = requests.get("http:" + item)with open(path + item.split('TB')[1][0:18] + ".jpg", 'wb') as f:f.write(data.content)f.close()time.sleep(1)# 点击下一页,我用了name,ID等定位无效,所以用的find_element_by_css_selectornext = driver.find_element_by_css_selector("#mainsrp-pager > div > div > div > ul > li.item.next > a > span:nth-child(1)")next.click()except Exception as e:print(e)if __name__ == '__main__':getPhoto()复制代码

希望对大家有所帮助! 大家可以关注我的微信公众号:「秦子帅」一个有质量、有态度的公众号!

Python爬虫实战(5)-爬取淘宝网服装图片(Selenium+Firefox)相关推荐

  1. Python爬虫学习之爬取淘宝搜索图片

    Python爬虫学习之爬取淘宝搜索图片 准备工作 因为淘宝的反爬机制导致Scrapy不能使用,所以我这里是使用selenium来获取网页信息,并且通过lxml框架来提取信息. selenium.lxm ...

  2. Python爬虫实战:抓取淘宝MM照片

    本篇目标 1.抓取淘宝MM的姓名,头像,年龄 2.抓取每一个MM的资料简介以及写真图片 3.把每一个MM的写真图片按照文件夹保存到本地 4.熟悉文件保存的过程 1.URL的格式 在这里我们用到的URL ...

  3. 【Python爬虫实战】爬取彼岸图库高清图片

    利用Python爬取彼岸图库高清图片 让你每天一张壁纸不重样,今天利用Python爬取 彼岸图库 http://pic.netbian.com/ 分析网页 通过首页可以看到要获取全站图片必须先抓取各个 ...

  4. 【Python爬虫实战】爬取某小说网排行榜上的图书封面图片

    文章目录 一.Python爬虫必备两大模块 1.1 requests模块用于发送http请求 1.2 bs4(beautifulsoup)模块用于解析html文本 二.Python爬虫项目演示 2.1 ...

  5. python爬虫实战之爬取中国农药网

    前言:这算是和研究生老师第一次正式的进行项目,虽说开始的有点随便,但是第二战还是挺成功的!自己作为一个本科生,也很幸运可以跟着学点知识,随便帮自己学院的老师出点力.还记得第一次交接任务时是和陈瑞学长, ...

  6. python使用requests库爬取淘宝指定商品信息

    python使用requests库爬取淘宝指定商品信息 在搜索栏中输入商品 通过F12开发者工具抓包我们知道了商品信息的API,同时发现了商品数据都以json字符串的形式存储在返回的html内 解析u ...

  7. 携程ajax,Python爬虫实战之爬取携程评论

    一.分析数据源 这里的数据源是指html网页?还是Aajx异步.对于爬虫初学者来说,可能不知道怎么判断,这里辰哥也手把手过一遍. 提示:以下操作均不需要登录(当然登录也可以) 咱们先在浏览器里面搜索携 ...

  8. python 爬取淘宝网课

    python爬取淘宝网课,打开web控制台,发现有个链接可以下载到对应的内容,下载的格式是m3u8,用文本打开里面是许多.ts链接,当然百度后得知可以直接下个vlc然后下载,但是还是想用python试 ...

  9. Python爬虫实战之爬取糗事百科段子

    Python爬虫实战之爬取糗事百科段子 完整代码地址:Python爬虫实战之爬取糗事百科段子 程序代码详解: Spider1-qiushibaike.py:爬取糗事百科的8小时最新页的段子.包含的信息 ...

最新文章

  1. mysql输出非零列_如何只提取mysql和php中具有非零值的列?
  2. ossfs工具将OSS挂载到阿里云linux系统目录例子
  3. 物理约束相关问题梳理
  4. 【转】采购提前期概述
  5. 今天做了一个DNN的模块,填到它默认的home页(关于DNN新建模块无法操作)
  6. C# 使用HttpWebRequest通过PHP接口 上传文件
  7. 【第三期】那些设计漂亮、有创意的电路板!
  8. pwmc语言调速程序_51单片机的直流电机PWM调速系统设计,正转反转,加减速,急停等,仿真和代码...
  9. 盘点物联网网络和设备安全的五个误解
  10. 微型计算机基础知识,微型计算机的基础知识
  11. 周志华机器学习西瓜书速记第二章绪论模型评估与选择(二)
  12. 系统思考负反馈之戴明的PDCA循环
  13. 微原创——好用的文章转换工具自媒体利器
  14. 一键保存网页为PDF
  15. 电子发票撤销 java_已确认的发票如何撤销
  16. 已知法向量 求投影_空间直线在平面上投影方程的多种解法
  17. QTextEdit 富文本格式清除
  18. 第4章 网络信息资源检索
  19. idea git输错密码的处理 win10
  20. 英语笔记1.2.2022

热门文章

  1. c语言扫雷源代码简单版,C语言扫雷游戏源代码
  2. 一个空格引发的悲剧(详解如何看懂悲催的技术人员冷笑话)
  3. sap假脱机打印机设置_SAP打印机配置
  4. go语言的iota是什么意思_Golang学习——常量const和iota
  5. Java 编程风格军规,看这一篇就够了
  6. comsol中,查看材料库中材料参数的办法
  7. Tableau 七、多边形地图和背景图地图:设置地理信息(自定义地图码导入、设置地图源)
  8. Spring JPA自定义SQL分页查询
  9. A类、B类、C类IP地址区别,同一网段是?
  10. 第三方微投票系统投票数据展示代码