1、显示等待:

from selenium import webdriver
from time import sleep
from selenium.webdriver.support.ui import WebDriverWait #显示等待针对元素操作
#EC预期条件类(里面主要有一些判断元素是否出现,弹出框是否出现,以及是否出现新窗口等。)
#EC用的比较多的就是和显示等待一起使用,通过显示等待的方法来循环判断是否元素是否出现
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By#用于元素定位 dr=webdriver.Firefox()
dr.get("https://www.baidu.com/")
dr.maximize_window()
sleep(2)
dr.find_element_by_css_selector('#kw').send_keys(u'测试')
sleep(2)
element=WebDriverWait(dr,5,0.5).until(EC.presence_of_element_located((By.ID,'su')))
#显示等待,判断搜索按钮是否存在,每隔0.5秒刷新一次,5秒内没找到报异常
element.click()
sleep(2)
dr.quit()

2、隐式等待

from time import sleep,ctime
from selenium.common.exceptions import NoSuchElementException
from selenium import webdriver dr=webdriver.Firefox()
dr.get("https://www.baidu.com/")
dr.maximize_window()
dr.implicitly_wait(5)#设置隐式等待,等待时间5秒,隐式等待全局生效
try:
print(ctime())
dr.find_element_by_css_selector("#kw").send_keys("python")
dr.find_element_by_css_selector("#su1").click()
except NoSuchElementException as xx:
print(xx)
finally:
print(ctime()) sleep(2)
dr.quit()

3、强制等待

from selenium import webdriver
from time import sleep dr=webdriver.Firefox()#打开浏览器
dr.get("https://www.baidu.com")#打开百度
dr.maximize_window()#浏览器最大化
sleep(3)#强制等待3秒
dr.quit()#关闭浏览器

最新文章

  1. python处理命令行参数
  2. MySQL查询优化之explain的深入解析
  3. 在Ubuntu下配置舒服的Python开发环境
  4. HttpClientUtils.java
  5. php对csv文件的读取,写入,输出下载操作
  6. Mac OS环境变量配置(Android Studio之Gradle)
  7. java学习笔记_GUI(3)
  8. Altium Designer规划电路板
  9. Unity UI和引用的管理中心
  10. HTML5简单入门系列(六)
  11. 使用ToggleButton和StackPanel+Border实现圆角开关按钮动画效果
  12. 关于IOS的Cocoapods相关问题
  13. hadoop 及hbase zookeeper 经常出现问题
  14. 解决Yii2邮件发送问题(结果返回成功,但接收不到邮件)
  15. java多线程知识点概述
  16. AsciidocFX编辑器小贴士
  17. for循环找出2到100的质数(素数)
  18. HBase表重命名
  19. Gson序列化问题导致的内存溢出,tip:Background sticky concurrent mark sweep GC freed
  20. js实现打印

热门文章

  1. 洛谷P1424 小鱼的航程(改进版)
  2. POJ3160强连通+spfa最长路(不错)
  3. 联想R720Y空间问题
  4. 初步了解web
  5. Packing data with Python
  6. docker 的常见命令行解析
  7. istio部署问题Q&A
  8. Gaussian Mixture Model
  9. 马哥Linux--elasticsearch
  10. LVM 相关知识