用python爬取动态网页上的图片(百度图片)
参考B站一个视频,视频链接:
https://www.bilibili.com/video/BV1Va4y1Y7fK?share_source=copy_web
chromedriver.exe驱动下载链接:
http://chromedriver.storage.googleapis.com/index.html

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
import time
import requestsdef getnamepage(name):b.get('http://image.baidu.com/')#search_box=b.find_element_by_id('kw')search_box = b.find_element_by_id('kw')search_box.send_keys(name)search_box.send_keys(Keys.ENTER)time.sleep(5)def download(imglist,num):#选取大尺寸ele=b.find_element_by_id('sizeFilter')ActionChains(b).move_to_element(ele).perform()time.sleep(2)#up主的代码#ele4=b.find_element_by_xpath('//*[@id="sizeFilter"]/div/ul/li[3]')# 我自己的代码,在尺寸里面找的时候多往下层翻一翻,尺寸选择在里面ele4 = b.find_element_by_xpath(' // *[ @ id = "sizeFilter"] / div / div[2] / ul / li[3]')ActionChains(b).move_to_element(ele4).perform()time.sleep(2)ele4.click()time.sleep(2)#打开第一张图片,在此界面中点击左右切换图片# up主的代码#ele1=b.find_element_by_xpath('/html/body/div[2]/div[2]/div[4]/div/ul/li[1]/div[1]/a/img')#我自己的代码ele1 = b.find_element_by_xpath('// *[ @ id = "imgid"] / div[1] / ul / li[3] / div / div[2] / a / img')ele1.click()b.switch_to.window(b.window_handles[1])#很重要的一步,切换窗口,否则页面找不到元素,python shell里面是b.switch_to_windowx=1for i in range(1,num+1):#ele3=b.find_element_by_xpath('/html/body/div[1]/div[2]/div/span[2]/span')#ele3.click()#time.sleep(3)#为保险起见,设置一个睡眠和爬取的时间差ele2=b.find_element_by_xpath('//*[@id="currentImg"]')img=ele2.get_attribute('src')#获取当前图片的url链接r=requests.get(img)if r.status_code==200:path='F://python-file//picture/%d.jpg'%xprint('正在爬取  '+img)with open(path,'wb') as f:f.write(r.content)time.sleep(1)f.close()print('爬取成功')x+=1ele3=b.find_element_by_xpath('/html/body/div[1]/div[2]/div/span[2]/span')ele3.click()#time.sleep(3)#跳到下一张else:ele3=b.find_element_by_xpath('/html/body/div[1]/div[2]/div/span[2]/span')ele3.click()time.sleep(1)continueif __name__=="__main__":#b=webdriver.Chrome()#b = webdriver.Chrome('G:\Google\Chrome\Application//chromedriver.exe')#这里的chromedriver.exe驱动需要自己下载,不同谷歌浏览器对应不同的驱动,这个驱动要与谷歌浏览器放在同一个文件夹下b = webdriver.Chrome('G://Google//Chrome//Application//chromedriver.exe')name='笛卡尔'#定义要搜索的内容num=15imglist=[]getnamepage(name)download(imglist,num)b.close()

用python爬取动态网页上的图片(百度图片)相关推荐

  1. python爬取动态网页图片

    爬取某知名网站图片(爬取动态网页) python爬取动态网页图片 python爬取动态网页图片 环境: python3.pycharm 库: requests.urllib.json 思路: 1.分析 ...

  2. python爬取动态网页_python爬取动态网页数据,详解

    原理:动态网页,即用js代码实现动态加载数据,就是可以根据用户的行为,自动访问服务器请求数据,重点就是:请求数据,那么怎么用python获取这个数据了? 浏览器请求数据方式:浏览器向服务器的api(例 ...

  3. 用Python爬取动态加载的诸如百度的图片

    用Python爬取动态加载的诸如百度的图片 使用原因 代码如下 模块介绍 selenium模块 lxml解析模块 requests模块 去除重复 开启多线程 效果如下 留言 使用原因 学习Python ...

  4. Python爬取动态网页实例讲解

    笔者在做爬虫作业时,遇到了一个动态网页,分析代码网页源代码时因此就少了许多需要的元素.下面用一个实例来记录一下爬取动态网页的步骤. 实例:股票定向爬虫 这个实例目标是从东方财富网获取股票列表,然后根据 ...

  5. python爬取动态网页图片_python爬虫之爬取动态加载的图片_百度

    运行坏境 python3.x 选择目标--百度 当我们在使用右键查看网页源码时,出来的却是一大堆JavaScript代码,并没有图片的链接等信息 因为它是一个动态页面嘛.它的网页原始数据其实是没有这个 ...

  6. 用python爬取xkcd.com上的有趣漫画图片

    这是自学前端的第二天. 在学<Automate The Boring Stuff With Python>的web开发部分时发现自己对于HTML.CSS等前端标记语言一无所知,于是前两天在 ...

  7. python爬取动态网页的内容

    from bs4 import BeautifulSoup from selenium import webdriver import timedef main():driver = webdrive ...

  8. chrome动态ip python_用Python爬虫爬取动态网页,附带完整代码,有错误欢迎指出!...

    系统环境: 操作系统:Windows8.1专业版 64bit Python:anaconda.Python2.7 Python modules:requests.random.json Backgro ...

  9. python动态页面元素爬取_爬取动态网页python+Web kit

    上一篇文章爬取动态网页python+selenium+webdriver介绍了爬取动态网站的一种模拟浏览器的方法,该方法的优劣也很明显 优: 可以模拟任何人的操作,输入账号密码,点击登录等等操作 劣: ...

最新文章

  1. Android应用资源---布局资源类型(Layout)
  2. 嵌入式CGI开发之旅——CGI环境变量
  3. GET和POST提交乱码解决方案
  4. (转载)Struts2源码粗略分析四:理解xwork工作原理
  5. 巧用DOS命令合并多个文本文件的内容
  6. C语言 结构体里的元素前面有一点“.”代表什么意思?
  7. jQuery实现图片延迟加载
  8. 阿里巴巴数据库分库分表的最佳实践
  9. 卢伟冰暗示Redmi Note9即将到来:千元机的不二之选
  10. BZOJ2938:[Poi2000]病毒
  11. easyUI不同版本的combotree控件clear方法的区别
  12. Atitit.注重细节还是关注长远??长远优先
  13. wpf treeview 绑定不同的对象
  14. 让XP远程桌面连接支持网络身份验证
  15. 视频教程-CoreIDraw 2019零基础到精通-CorelDraw
  16. 计算机三级要英语词汇,大学英语三级常考词汇
  17. kali linux国内源
  18. 漫威商业逆袭成功秘诀
  19. 用PS将图片或表格中的英文变成中文
  20. Windows-Server-2016外置网卡,安装不了驱动,解决方法

热门文章

  1. PS把图标背景变为透明背景
  2. Windows 安装 box2d-kengz报错解决方案
  3. 计算机上的enc代表什么,ENC 文件扩展名: 它是什么以及如何打开它?
  4. t = Date.parse(new Date()) 解释一下这条代码的每一个单词的意思
  5. Pages、Numbers或 Keynote无法添加媒体?
  6. 大数据之Spark(四):Spark SQL
  7. 栅格数据空间叠置分析题目步骤讲解
  8. 如何使用cmd命令行进入自己想要进入的目录?
  9. ATTCK实战系列-红队评估(三)WP
  10. MGF病毒最新版本的源代码(V1.30)