python3 selenium自动化 frame表单嵌套的切换方法


Posted in Python onAugust 23, 2019

在web自动化测试中,测试工程师经常会碰到frame表单嵌套结构,直接定位会报错,我们需要切换表单后才能成功定位。

我拿QQ邮箱登录来作为例子说下frame怎么切换。

python3 selenium自动化 frame表单嵌套的切换方法

qq邮箱页面按F12可以看到以下信息:

python3 selenium自动化 frame表单嵌套的切换方法

表单的信息如下:

<iframe id="login_frame" name="login_frame" height="100%" scrolling="no" 
width="100%" frameborder="0" ............</iframe>

那我们可以通过这些信息切换表单

dr.switch_to.frame(‘login_frame')

然后就可以直接定位了

dr.find_element_by_id(‘u').send_keys(‘582732974@qq.com') #输入qq账号
dr.find_element_by_id(‘p').send_keys(‘xxxx') #输入qq密码

完整代码如下:

from selenium import webdriver
dr = webdriver.Chrome()
dr.get('https://mail.qq.com/')
dr.switch_to.frame('login_frame')
dr.find_element_by_id('u').send_keys('582732974@qq.com')
dr.find_element_by_id(

以上这篇python3 selenium自动化 frame表单嵌套的切换方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python安装Imaging报错:The _imaging C module is not installed问题解决方法
Aug 22 Python
Python中py文件引用另一个py文件变量的方法
Apr 29 Python
python opencv 二值化 计算白色像素点的实例
Jul 03 Python
Python爬虫实现的根据分类爬取豆瓣电影信息功能示例
Sep 15 Python
利用Python裁切tiff图像且读取tiff,shp文件的实例
Mar 10 Python
实现ECharts双Y轴左右刻度线一致的例子
May 16 Python
pyMySQL SQL语句传参问题,单个参数或多个参数说明
Jun 06 Python
深入浅析pycharm中 Make available to all projects的含义
Sep 15 Python
Scrapy基于scrapy_redis实现分布式爬虫部署的示例
Sep 29 Python
Python安装并操作redis实现流程详解
Oct 13 Python
python 对一幅灰度图像进行直方图均衡化
Oct 27 Python
python re模块常见用法例举
Mar 01 Python
python-Web-flask-视图内容和模板知识点西宁街
Aug 23 #Python
python3 selenium自动化测试 强大的CSS定位方法
Aug 23 #Python
python3 selenium自动化 下拉框定位的例子
Aug 23 #Python
python Web flask 视图内容和模板实现代码
Aug 23 #Python
Python 多线程搜索txt文件的内容,并写入搜到的内容(Lock)方法
Aug 23 #Python
Python 实用技巧之利用Shell通配符做字符串匹配
Aug 23 #Python
opencv 获取rtsp流媒体视频的实现方法
Aug 23 #Python
You might like
把PHP安装为Apache DSO
2006/10/09 PHP
让你同时上传 1000 个文件 (二)
2006/10/09 PHP
php三种实现多线程类似的方法
2015/10/30 PHP
php实现有序数组旋转后寻找最小值方法
2018/09/27 PHP
javascript parseInt 函数分析(转)
2009/03/21 Javascript
学习ExtJS accordion布局
2009/10/08 Javascript
jQuery的强大选择器小结
2009/12/27 Javascript
DOM基础教程之使用DOM
2015/01/19 Javascript
JS+CSS实现感应鼠标渐变显示DIV层的方法
2015/02/20 Javascript
Angular和百度地图的结合实例代码
2016/10/19 Javascript
前端JS面试中常见的算法问题总结
2016/12/23 Javascript
jQuery Validate 无法验证 chosen-select元素的解决方法
2017/05/17 jQuery
微信小程序 页面跳转传值实现代码
2017/07/27 Javascript
Vue + Vue-router 同名路由切换数据不更新的方法
2017/11/20 Javascript
fetch 如何实现请求数据
2018/12/20 Javascript
JS使用new操作符创建对象的方法分析
2019/05/30 Javascript
详解JavaScript修改注册表的方法
2020/01/05 Javascript
Vue+Element-U实现分页显示效果
2020/11/15 Javascript
[00:32]10月24、25日 辉夜杯外卡赛附加赛开赛!
2015/10/23 DOTA
[01:07:13]TNC vs Pain 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
[00:13]天涯墨客二技能展示
2018/08/25 DOTA
[03:30]完美盛典趣味短片 CSGO2019年度名场面
2019/12/07 DOTA
Using Django with GAE Python 后台抓取多个网站的页面全文
2016/02/17 Python
详解Python中的array数组模块相关使用
2016/07/05 Python
python命令行工具Click快速掌握
2019/07/04 Python
python中的逆序遍历实例
2019/12/25 Python
HTML5的语法变化介绍
2013/08/13 HTML / CSS
日本必酷网络直营店:Biccamera
2019/03/23 全球购物
英文请假条
2014/04/11 职场文书
学习“七一”讲话精神体会
2014/07/08 职场文书
一份文言文检讨书
2014/09/13 职场文书
2014教师年度思想工作总结
2014/11/10 职场文书
2014年社区工作总结
2014/11/18 职场文书
2014年底个人工作总结
2015/03/10 职场文书
Nginx配置https原理及实现过程详解
2021/03/31 Servers
如何用Navicat操作MySQL
2021/05/12 MySQL