当前位置: 首页 > news >正文

宝安建网站的公司抖音代运营套餐价格表

宝安建网站的公司,抖音代运营套餐价格表,eyoucms官网,企业网站seo名称selenium 等待 为什么需要写等待呢#xff1f; 因为我们的元素定位 可能因为一些原因报错 原因#xff1a; 元素定位错误 动态元素 元素没有加载完成 打开新窗口/标签等 所以我们等待 就是解决第三个问题的 方式一 强制等待#xff08;time.sleep#xff09;#xff1a…selenium 等待 为什么需要写等待呢 因为我们的元素定位 可能因为一些原因报错 原因 元素定位错误 动态元素 元素没有加载完成 打开新窗口/标签等 所以我们等待 就是解决第三个问题的 方式一 强制等待time.sleep 暂停运行指定的时间。这种方式的优点是简单易用但缺点是可能会浪费无谓的等待时间另外如果等待时间设定不当可能会出现未等待到元素就进行下一步操作导致失败的情况。 time.sleep(10)方式二 隐式等待implicitly_wait 告知 WebDriver 在查找元素时如果立即未找到则等待一段时间直到元素出现为止。缺点是如果网页中有多个元素需要等待则每个元素都要进行等待可能会增加测试运行的时间。 implicitly_wait(time) 默认参数的单位为秒 driver.implicitly_wait(10)首先这10秒并非一个固定的等待时间它并不影响脚本的执行速度。其次它并不针对页面上的某一元素进行等待。当脚本执行到某个元素定位时如果元素可以定位则继续执行如果元素定位不到则它将以轮询的方式不断地判断元素是否被定位到。假设在第6秒定位到了元素则继续执行若直到超出设置时长10秒还没有定位到元素则抛出异常。 方式三 显式等待WebDriverWait Expected Conditions 这是一种更为智能的等待方式它可以部分解决强制等待和隐式等待的缺点。它允许我们指定要等待的条件和最大等待时间当条件满足时立即返回否则在达到最大等待时间时抛出异常。因此它不会浪费无谓的时间。虽然它比隐式等待和强制等待更为灵活但同样也更为复杂。 from selenium.webdriver.support import expected_conditions WebDriverWait(driver, 10).until(expected_conditions.presence_of_element_located((By.ID, su))).click() WebDriverWait(driver,timeout,poll_frequency0.5,ignored_exceptionsNone) driver 浏览器驱动。 timeout 最长超时时间默认以秒为单位。 poll_frequency 检测的间隔步长时间默认为0.5S。 ignored_exceptions 超时后的异常信息默认情况下抛NoSuchElementException异常。 WebDriverWait()一般由until()或until_not()方法配合使用 until(method, message‘’) 当某元素出现或什么条件成立则继续执行。指定时间找到则返回值没有找到报错 until_not(method, message‘’) 当某元素消失或什么条件不成立则继续执行。指定时间内元素消失返回True,如果还在则报错 WebDriverWait使用 from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import By# 启动 webdriver假设为 driver driver webdriver.Firefox()# 访问页面 driver.get(http://somedomain/url_that_delays_loading)# 使用 WebDriverWait设置最大等待时间以及轮询时间默认 0.5 秒 wait WebDriverWait(driver, 10)# 使用 until 方法其中 expected_conditions 已经有很多内置的条件可以使用 element wait.until(EC.presence_of_element_located((By.ID, someid)))# 接下来就可以对获取到的 element 进行操作了WebDriverWait 和 Expected Conditions 是 Selenium WebDriver 中一种同步的方式也称为显式等待。它用于解决一些在页面完全加载完成之前不可交互的元素的问题。这种方式能够等待页面元素在一定时间秒内变为可交互状态如果超出了设置的时间还没有找到元素就会返回异常。 一些常用的 expected_conditions 条件如下 presence_of_element_located某个元素已经出现在 DOM 里注意这并不意味着该元素是可见的。 visibility_of_element_located元素可见最少一个像素可见。 element_to_be_clickable元素可以被点击通常用在确认按钮可以被点击后再执行点击事件。 注意如果到了最大等待时间条件还未满足WebDriverWait 将会抛出 TimeoutException异常可以根据需要进行捕获并处理。 总结 所以要选择哪种方式取决于你具体的需求和环境。推荐在可能的情况下尽量使用显式等待因为它提供了最大等待时间以及等待某一特定条件成立。同时显式等待也是动态的它会在条件满足后立即返回最大程度地减少了无谓的等待时间。
http://www.zqtcl.cn/news/671775/

相关文章:

  • 石家庄制作网站查网站流量查询工具
  • 信誉好的永州网站建设静态网站的短处
  • wordpress主题汉化软件河南网站优化哪家好
  • 关于水果的网站建设前端页面设计
  • 随州网站推广哪家好河南网站seo营销多少费用
  • 重庆网站优化排名软件方案谁能做网站开发
  • 河南官网网站建设报价app网站制作多少钱
  • 做网站页面一般用什么软件网站建设项目说明书
  • 做国外lead应该做什么网站网站运营报告
  • 建立一个自己的网站需要多少钱我的世界查找建筑网站
  • 广州网站建设互广做响应式网站设计图是多大的
  • 网站建设 运维 管理包括建大网站首页
  • 快手做任务网站python基础教程作者
  • 网站添加 百度商桥企信网查询
  • 用易语言可以做网站吗西安外贸网站开发
  • 常用网站推广方法电商便捷的网站建设平台
  • 做网站免费的app是什么免费公司注册
  • 做平面素材比较好的网站网络系统设计的步骤
  • 西安网站建设 乐云seo全国旅游景点网站开源
  • 中山快速做网站价格网站投稿源码
  • 免费网站建设教程青岛网站建设收费哪个平台好
  • 关于网站建设外文文献金蝶软件多少钱一套
  • 有高并发量门户网站开发经验国家商标局官网查询
  • 正规的招聘网站可信网站标志
  • 网站举报能不能查到举报人佛山企业网站建设电话
  • 家居网站建设如何现在去长沙会被隔离吗
  • 电子烟网站建设win2008iis7配置网站
  • 做网站的是什么职业微信公众号模板素材网站
  • 重庆川九建设有限责任公司官方网站成都网站海口网站建设
  • 珠宝 网站模板如何做公司官网