implicitly_wait() 跟 WebdriverWait()的区别

  • 相同点:

    1. 这两个东西,都是为了在测试网页的时候进行等待的
    2. 一方面是都可以完成对于动态数据的等待和爬取。(都是一旦完成就直接溜掉~)
  • 不同点:
    1. 前者是隐式等待,后者是显式等待。可能有人要问区别了。区别很简单。implicityly_wait()只需要使用一次,之后关于这个DOM文档树(好像是这个中文),中的任何一个元素,都会有这样的一个隐式等待。但是对于后者,就是每次使用的时候都需要自己再设置一次时间。
    2. 后者使用更为灵活一些,可以配合selenium自身的很多库来进行设置,前者就比较简单,如果没有什么特别的要求的话,用前面的那种就可以了~

下面也展示两者的使用方法:

  • 隐式
from selenium import webdriverif __name__ == '__main__':dr = webdriver.Chrome()dr.get("http://www.baidu.com")dr.implicitly_wait(10)  # 这里~element = dr.find_element_by_id("su")print(element)dr.quit()pass
  • 显式(配合多种库一起用,更灵活,也更麻烦)
from selenium import webdriver
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWaitif __name__ == '__main__':dr = webdriver.Chrome()dr.get("http://www.baidu.com")wait = WebDriverWait(dr, 10)  # 设置某个空间等待10秒这个事件element = wait.until(EC.element_to_be_clickable((By.ID, "su")))  # 直到检测到某个事件前一直等待print(element)dr.quit()pass

Python动态网页爬虫技巧Selenium(一)相关推荐

  1. org.apache.poi Excel列与行都是动态生成的_网络爬虫:Python动态网页爬虫2种技术方式及示例...

    作者:糖甜甜甜 https://mp.weixin.qq.com/s/5Dwh5cbfjpDfm_FRcpw1Ug 这一讲,我将会为大家讲解稍微复杂一点的爬虫,即动态网页的爬虫. 动态网页技术介绍 动 ...

  2. Python动态网页爬虫技术

    这一讲,我将会为大家讲解稍微复杂一点的爬虫,即动态网页的爬虫. 动态网页技术介绍 动态网页爬虫技术一之API请求法 动态网页爬虫技术二之模拟浏览器法 安装selenium模块下载 Google Chr ...

  3. Python动态网页爬虫-----动态网页真实地址破解原理

    Python动态爬虫 1.目标网站 2.目标网站行为分析 3.目标文件依赖加载分析 4.静态网页分析 5.动态加载代码分析 6.万事俱备 7.只欠东风 7.1获取html代码 7.2获取mh_info ...

  4. Python动态网页爬虫之爬取知乎话题回答

    你是如何开始能写Python爬虫?就这个问题我查看了一下知乎,看到各种大牛写的心得,感觉受益匪浅,于是我有了一种冲动,想把各种大牛回答的心得爬取下来,以后可以细细品味. 首先我们在浏览器输入https ...

  5. python+selenium+phantomJS爬取国家地表水水质自动监测实时数据发布系统——动态网页爬虫

    一.关于phantomjs 1.介绍 PhantomJS是一个为自动化而生的利器,它本质上是一个基于webkit内核的无界面浏览器,并可使用JavaScript或CoffeeScript进行编程.由于 ...

  6. python+selenium+Chrome(无头版)爬取国家地表水水质自动监测实时数据发布系统(修改版)——动态网页爬虫

    这是一篇动态网页的爬虫教程,新手可以操作一下,简单实用. 一.前言 这篇blog跟python+selenium+phantomJS爬取国家地表水水质自动监测实时数据发布系统--动态网页爬虫的爬虫思路 ...

  7. python(六)动态网页爬虫

    python(六)动态网页爬虫 什么是动态网页爬虫 动态网页 在网站不重新加载的情况下(网页的url不发生改变),通过ajax技术动态更新网站中的局部数据. ajax 异步JavaScript和XML ...

  8. Python小姿势 - Python爬虫:如何使用Python实现网页爬虫

    Python爬虫:如何使用Python实现网页爬虫 网页爬虫(Web Crawler),也叫网络爬虫(Web Spider),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.爬虫程序或者脚本 ...

  9. Python之网络爬虫(selenium爬取动态网页、爬虫案例分析、哈希算法与RSA加密)

    文章目录 一.selenium爬取动态网页 二.爬虫案例分析 三.哈希hash算法与RSA加密 一.selenium爬取动态网页 1.动态网页认知 爬虫其实就是在模仿浏览器的行为 应对要多次数据的交互 ...

最新文章

  1. 字符设备之register_chrdev与register_chrdev_region
  2. Win7+VS2010环境下CEGUI 0.8.4编译过程详解
  3. jQuery 1.10.0 和 2.0.1 发布
  4. 快速部署web项目上线云服务器
  5. DataTable转Csv,Excel(转)
  6. SuSE Linux 应用与安装
  7. centos7/RHEL7最小化系统安装gnome图形界面
  8. 备用计算机机房管理制度,计算机机房管理制度
  9. Studio One5中文电脑音乐制作宿主软件保卫萝卜
  10. 题目:L2-029 特立独行的幸福 (25 分)
  11. 在某网课学习前端笔记整理js篇24-js正则表达式
  12. android微信照片,一张能让安卓版微信崩溃的图片
  13. http_proxy设置
  14. 基于单片机交通灯控制的c语言程序设计,基于单片机控制的交通灯毕业设计
  15. 波特Baud、码元、比特bit三者关系+ Byte、bps、Bps
  16. 测试术语-测试用例分类
  17. 计算机屏保密码失效,电脑锁屏密码突然不对了是怎么回事
  18. Mac 查看隐藏文件(夹)
  19. 电脑常见问题及解决办法
  20. 为什么 Git 比 SVN 好

热门文章

  1. 使用Flutter之后,我们的CPU占用率降了50%
  2. 《Python从小白到大牛》第7章 运算符
  3. Spring Boot微信点餐——实战开发DAO层
  4. 动物统计加强版(贪心,字典序)
  5. 安装kvm的服务器开启vnc连接其虚拟机
  6. (笔记)Ubuntu下安装arm-linux-gcc-4.4.3.tar.gz (交叉编译环境)
  7. 在VS中巧用文件系统来发布网站
  8. 高效的CSS(2008年7月4日更新)
  9. Class Activation Mapping (CNN可视化) Python示例
  10. Feature Map of Pytorch示例