当前位置: 首页 > 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.hkea.cn/news/14544480/

相关文章:

  • 网站建设与维护招聘条件百度站长平台官网登录入口
  • 广州互助网站开发菜谱网站开发
  • 一个人搞得定网站建设网站建设后端技术
  • 制作网站服务器做网站servlet
  • 网站建设目的及意义企业网站设计服务公司
  • 广州市花都区建设局网站易拉罐手工制作大全
  • 网站定制 北京网站的备案号在哪
  • 手机端网站建设企业网站建设的常见流程为
  • 网站的费用多少山西省住房和城乡建设厅门户网官方网站
  • seo网站关键字优化网页设计图片排列关系
  • 万建站南昌网站改版必要性
  • 合肥本地网站辽宁网络推广公司
  • 800元做小程序网站有了域名建设网站
  • 010网站建设山东网建设
  • 二网站手网站自适应手机端
  • 水友做的yyf网站建设网站需求
  • wordpress怎么加站点图标海天建设集团网站
  • 乐清网站优化推广电子商务网站建设论文资料
  • 南阳市建网站公安徽龙山建设网站
  • 各大网站vip接口建设中区网站建设
  • 创业做网站需要哪些必备条件电商平台建设做网站
  • 有趣的网站游戏深圳网站建设最专业的
  • 垂直行业门户网站网页制作网站制作
  • 域名注册以后会给你一个账户名密码上传做好的网站目前做网站需要兼容到ie8吗
  • 做网站的哪家好网站建设 公司排名
  • 小企业网站建设的大品牌window7用jsp做的网站要什么工具
  • 有域名了如何自己做网站免费发seo外链平台
  • 李家沱网站建设国外科技感强的网站
  • 做国内网站多少钱php网站后台制作
  • windows系统怎么做ppt下载网站自己做网站建议