什么是iframe切换,我们在测试web网页过程中,可能会遇到一个网页中嵌套另一个网页的情况,如下图,就是一个ifame嵌套的例子

我们如何切换呢,别急,webdriver里有方法,可以切换到iframe里面

1.方法一:driver.switch_to.frame(iframe_name)

iframe_name:1.可以是name属性

2.webElement对象(by.xpth表达式)

3.下标值

#iframe切换
from selenium import webdriver
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

driver=webdriver.Chrome()
driver.get("https://ke.qq.com/")

driver.implicitly_wait(30)
driver.find_element_by_id('js_login').click()#找到登录按钮,并点击

loc=(By.XPATH,'//i[@class="icon-font i-qq"]')
WebDriverWait(driver,10).until(EC.visibility_of_element_located(loc))
driver.find_element_by_xpath('//i[@class="icon-font i-qq"]').click()#点击qq登录

#操作到有iframe的页面当中,接下来在iframe中找元素并操作
loc=(By.NAME,"login_frame_qq")
WebDriverWait(driver,10).until(EC.visibility_of_element_located(loc))
driver.switch_to.frame("login_frame_qq")

driver.find_element_by_id("switcher_plogin").click()#点击账号密码登录

方法二:frame_to_be_available_and_switch_to_it(iframe_name)

WebDriverWait(driver,10).until(EC.frame_to_be_available_and_switch_to_it('login_frame_qq'))

  

  

最新文章

  1. 学习PYTHON之路, DAY 8 - PYTHON 基础 8 (面向对象进阶)
  2. 分模块的maven项目调试时报Source not found的解决办法
  3. List集合对象根据字段排序
  4. Linux 系统常用命令汇总(四) 程序和资源管理
  5. javascript String 和StringBuffer 的应用
  6. qq第3方登录的JS实现方式记录
  7. rpc和websocket的区别
  8. 纯css三角形
  9. OC继承以及实例变量修饰符
  10. oracle 物化视图 job
  11. 机房收费系统——转换list泛型时,字段名称不正确应出现故障
  12. scrapy_css
  13. [日常] NOIP 2017滚粗记
  14. JVM学习记录-垃圾收集器
  15. 基于zigbee协议的空中下载技术(OTA)
  16. A1046. Shortest Distance
  17. 在Ubuntu 15下搭建V/P/N服务器pptpd安装和配置
  18. 【Java多线程】JDK1.5并发包API杂谈
  19. android 6.0之后动态获取权限
  20. 利用自定义 ORM 下使用 flask-login 做登录校验使用笔记

热门文章

  1. 理解 Android Binder 机制(一):驱动篇
  2. Luban图片压缩
  3. (CS229)监督学习应用和梯度下降
  4. GoSDK的安装及环境变量配置 入门详解 - 精简归纳
  5. Go的第一个Hello程序 简简单单 - 快快乐乐
  6. 彻底弄懂设置根元素字体大小calc(100vw/18.75) 实现rem自适应
  7. 基于Vue.js PC桌面端弹出框组件|vue自定义弹层组件|vue模态框
  8. Java学习的第三十三天
  9. 自定义控件-只有横线的文本输入框(TxtLine)
  10. java 动态增加应用服务器,出现的消息队列的消费者提报错问题