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

学院网站建设用户需求分析报告北京市招标网

学院网站建设用户需求分析报告,北京市招标网,wordpress主题会员功能,网站建设电话销售技巧注#xff1a;显示等待和隐式等待不可混用 强制等待 让当前正在执行的代码线程暂停运行。 示例#xff1a;在电商网站的商品搜索页面#xff0c;等待 5 秒之后#xff0c;点击搜索按钮#xff0c;如果页面加载速度很快#xff0c;在 2 秒内生成#xff0c;那么还需要…注显示等待和隐式等待不可混用 强制等待 让当前正在执行的代码线程暂停运行。 示例在电商网站的商品搜索页面等待 5 秒之后点击搜索按钮如果页面加载速度很快在 2 秒内生成那么还需要等待 3 秒直到累计等待 5 秒才会继续执行但如果按钮生成时间超过 5 秒代码继续执行时就可能找不到按钮此时会抛出 NoSuchElementException 异常。 import timetry:# 打开商品搜索页面driver.get(https://www.example.com/search)# 强制等待5秒time.sleep(5)# 查找搜索按钮并点击driver.find_element(By.ID,search_button_id).click() except NoSuchElementException:print(按钮未找到请检查页面元素或等待时间是否合适。) 隐式等待 在 driver 初始化时设置了等待时间比如 5 秒在整个 driver 的生命周期内每次查找元素时它都会在设定的时间内不断地检查页面如果找到该元素则代码继续执行否则会抛出 NoSuchElementException 异常表示没有在规定时间找到该元素。 示例在电商网站的商品搜索页面输入关键词并点击搜索按钮如果在 5 秒内搜索框和搜索按钮成功加载并被找到代码就会顺利执行。但如果超过 5 秒还没找到就会抛出 NoSuchElementException 异常。 # 设置隐式等待5秒 driver.implicitly_wait(5)try:# 打开商品搜索页面driver.get(https://www.example.com/search)# 查找搜索框并输入关键词driver.find_element(By.ID,search_box_id).send_keys(手机)# 查找搜索按钮并点击driver.find_element(By.ID,search_button_id).click() except NoSuchElementException:print(页面元素未在规定时间内找到请检查页面或等待时间设置。) 显示等待 在规定时间内不断地检查元素是否满足特定条件一旦满足就立即执行后续操作如果在规定时间没有满足特定条件会抛出 TimeoutException 异常。 预置条件 等待元素可见 示例设置最大等待时间为 10 秒直到指定元素在页面上可见。 from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import ByWebDriverWait(driver, timeout10).until(EC.element_to_be_clickable((By.ID,element_id)))等待元素不可见 例设置最大等待时间为 10 秒直到指定元素在页面上不可见。 from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import ByWebDriverWait(driver, timeout10).until(EC.invisibility_of_element_located((By.ID,element_id))) 等待元素可点击 例设置最大等待时间为 10 秒直到指定元素变为可点击状态。 from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import ByWebDriverWait(driver, timeout10).until(EC.element_to_be_clickable((By.ID,element_id))) 等待文本可见 例设置最大等待时间为 10 秒直到指定元素的文本可见。 from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import ByWebDriverWait(driver, timeout10).until(EC.text_to_be_present_in_element((By.ID,element_id),Expected_Text)) 等待文本在元素里可见 例设置最大等待时间为 10 秒直到指定文本在元素的值中可见。 from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import ByWebDriverWait(driver, timeout10).until(EC.text_to_be_present_in_element_value((By.ID,frame_id),Expected_Title)) 等待元素存在 例设置最大等待时间为 10 秒直到指定元素存在 DOM文档对象模型 中。 from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import ByWebDriverWait(driver, timeout10).until(EC.presence_of_element_located((By.ID,element_id))) 等待元素消失 例设置最大等待时间为 10 秒直到指定元素从 DOM文档对象模型 中移除。 from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import ByWebDriverWait(driver, timeout10).until(EC.staleness_of(driver.find_element(By.ID,element_id))) URL 包含 例设置最大等待时间为 10 秒直到当前 URL 包含某个特定字符串。 from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import ByWebDriverWait(driver, timeout10).until(EC.url_contains(expected_substring)) 标题包含 例设置最大等待时间为 10 秒直到当前页面标题包含某个字符串。 from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import ByWebDriverWait(driver, timeout10).until(EC.title_contains(Expected Title))) 窗口可见 例设置最大等待时间为 10 秒直到新窗口出现并可见。 from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import ByWebDriverWait(driver, timeout10).until(EC.new_window_is_opened(driver.window_handles)) 等待切换iframe 例设置最大等待时间为 10 秒直到切换到某个 iframe 元素里。 from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import ByWebDriverWait(driver, timeout10).until(EC.frame_to_be_available_and_switch_to_it((By.ID,frame_id))) 高级 document.readyState 是表示当前网页状态的属性共有三个状态 loading文档正在加载这个阶段 HTML 结构正在被解析外部资源如样式表、脚本、图片等可能还在下载过程中。interactive文档已经完成解析DOM文档对象模型已经构建完成但是像图片、样式表、脚本等外部资源可能还没有完全加载完成。此时用户已经可以与页面进行交互了例如点击已经存在的 HTML 元素。complete页面的所有资源包括 HTML 结构、脚本、样式表、图片等都已经加载完成整个页面处于完全可用的状态。 设置检查条件的频率 示例总超时时间为 10 秒每 2 秒检查一次页面的 document.readyState 是否为 complete直到页面加载完成。 from selenium.webdriver.support.wait import WebDriverWaitWebDriverWait(driver, timeout10, poll_frequency2).until(lambda d: d.execute_script(return document.readyState) complete) 自动忽略特定异常进行等待 示例在等待特定元素时如果出现 NoSuchElementException 异常会自动忽略该异常继续等待直到找到元素或者超时时间到达。 from selenium.webdriver.support.wait import WebDriverWait from selenium.common.exceptions import NoSuchElementExceptionWebDriverWait(driver, timeout10, ignored_exceptions[NoSuchElementException]).until(lambda d: d.find_element(By.ID, element_id)) 自定义超时提示信息 示例在等待页面加载时如果 10 秒内未加载完成会捕获 TimeoutException 异常并打印自定义的超时消息。 from selenium.webdriver.support.wait import WebDriverWait from selenium.common.exceptions import TimeoutExceptiontry:WebDriverWait(driver, timeout10.until(lambda d: d.execute_script(return document.readyState) complete) except TimeoutException:print(页面加载超时请检查网络连接。)
http://www.sczhlp.com/news/223537/

相关文章:

  • 自己做网站需要购买服务器吗优质的网站建设推广
  • 运城 网站建设江苏建设机械网站
  • 软件下载网站推荐免费的加快公司网站建设
  • 可视化建网站长沙网络推广软件
  • 成都网站建设询q479185700上快网站开发整合套件
  • 大型购物网站建设费用南通建网站
  • 北京营销网站建设专业网站建设加盟合作
  • 泰安网站建设哪家强为网站开发软件
  • 小企业网站如何建设好网络游戏名
  • 四川网站备案核验单宁晋县建设局网站
  • 快消品网站建设网站如何快速免费推广
  • 深圳外贸网站开发英文网站建设需要准备什么
  • 昆明做网站建设的公司哪家好做网站用什么语音
  • 网站的作用和意义网站备案抽查通过
  • 做网站接单渠道模板网站与定制网站的优缺点
  • 专业网站制作网络公司wordpress的阅读量
  • 学怎么做建筑标书哪个网站金华在线制作网站
  • 网站建设与维护制度网站建设 的公司
  • 给企业做网站公司搜索广告是什么
  • 北京网站建设公司代理个人网站怎么做cps
  • 网站整体营销方案广州 创意的网站设计
  • 怎样备份网站数据库专做商品折扣的网站
  • 深圳企业网站建设方案个人网站建设收费标准
  • php 网站开发架构浙江外贸人才网
  • Python---简易编程解决工作问题
  • 日总结 16
  • 58同城的网站怎么做的厦门论坛网站建设
  • 深圳做网站案例宁波营销网站建设
  • 北京php网站开发cms建站模板app
  • 建网站的论坛android应用开发基础