Selenium元素的常用操作方法分析


Posted in Python onAugust 10, 2018

本文实例讲述了Selenium元素的常用操作方法。分享给大家供大家参考,具体如下:

Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成 .Net、Java、Perl等不同语言的测试脚本。

在前面一篇《Selenium定位元素操作》中已经介绍了如何对元素进行定位。定位只是第一步,定位之后需要对这个元素进行操作,或单击(按钮)或输入(文本框),下面就记录一下Selenium中元素的最常用的几个方法:

点击和输入

  • clear():清除文本
  • send_keys(value):按键模拟输入
  • click():单击元素
from selenium.webdriver import Chrome()
driver = Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get('https://www.baidu.com/')
driver.find_element_by_id('kw').clear()
driver.find_element_by_id('kw').send_keys('python')
driver.find_element_by_id('su').click()

提交

  • submit()

submit()方法用于提交表单,例如,在输入框输入关键字之后的回车操作,就可以通过该方法模拟:

from selenium.webdriver import Chrome
driver = Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get('https://www.baidu.com/')
element = driver.find_element_by_id('kw')
element.send_keys('python')
element.submit()

有时候submit()可以和click()方法互换来使用,submit()同样可以提交一个按钮,但submit()的应用范围远远没有click()广

其他常用方法

  • size:返回元素的尺寸
  • text:返回元素的内容
  • get_attribute(name):返回元素属性的值
  • is_displayed():设置该元素是否用户可见
from selenium.webdriver import Chrome()
driver = Chrome('C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
driver.get('https://www.baidu.com/')
# 获取元素的尺寸
element = driver.find_element_by_id('su')
print(element.size)           # {'height': 36, 'width': 100}
# 获取元素的内容
element = driver.find_element_by_id('setf')
print(element.text)           # 把百度设为主页
# 获取元素中value属性的值
element = driver.find_element_by_id('su')
print(element.get_attribute('value')   # 百度一下
# 获取该元素是否用户可见
element = driver.find_element_by_id('su')
print(element.is_displayed())      # True

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Linux下用Python脚本监控目录变化代码分享
May 21 Python
python奇偶行分开存储实现代码
Mar 19 Python
python使用matplotlib库生成随机漫步图
Aug 27 Python
解决Pycharm下面出现No R interpreter defined的问题
Oct 29 Python
python对矩阵进行转置的2种处理方法
Jul 17 Python
python+selenium+PhantomJS抓取网页动态加载内容
Feb 25 Python
Python使用type动态创建类操作示例
Feb 29 Python
Python tcp传输代码实例解析
Mar 18 Python
在django admin中配置搜索域是一个外键时的处理方法
May 20 Python
关于pycharm 切换 python3.9 报错 ‘HTMLParser‘ object has no attribute ‘unescape‘ 的问题
Nov 24 Python
python爬虫scrapy基于CrawlSpider类的全站数据爬取示例解析
Feb 20 Python
python模块与C和C++动态库相互调用实现过程示例
Nov 02 Python
Selenium定位元素操作示例
Aug 10 #Python
判断python字典中key是否存在的两种方法
Aug 10 #Python
详解python的sorted函数对字典按key排序和按value排序
Aug 10 #Python
Selenium(Python web测试工具)基本用法详解
Aug 10 #Python
Python生成器generator用法示例
Aug 10 #Python
python 字典修改键(key)的几种方法
Aug 10 #Python
详解python 注释、变量、类型
Aug 10 #Python
You might like
分享一个漂亮的php验证码类
2016/09/29 PHP
基于jQuery架构javascript基础体系
2011/01/01 Javascript
模仿百度三维地图的js数据分享
2011/05/12 Javascript
jquery验证手机号码、邮箱格式是否正确示例代码
2013/07/28 Javascript
获得Javascript对象属性个数的示例代码
2013/11/21 Javascript
javascript中字符串拼接详解
2014/09/26 Javascript
js实现宇宙星空背景效果的方法
2015/03/03 Javascript
js密码强度检测
2016/01/07 Javascript
JavaScript正则表达式匹配 div  style标签
2016/03/15 Javascript
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
2016/07/15 Javascript
AngularJS延迟加载html template
2016/07/27 Javascript
JS遍历ul下的li点击弹出li的索引的实现方法
2016/09/19 Javascript
JavaScript实现二分查找实例代码
2017/02/22 Javascript
Angular.js自定义指令学习笔记实例
2017/02/24 Javascript
javascript遍历json对象的key和任意js对象属性实例
2017/03/09 Javascript
基于JavaScript实现前端数据多条件筛选功能
2020/08/19 Javascript
JQuery 又谈ajax局部刷新
2017/11/27 jQuery
原生js封装的ajax方法示例
2018/08/02 Javascript
基于vue-router 多级路由redirect 重定向的问题
2018/09/03 Javascript
vue 纯js监听滚动条到底部的实例讲解
2018/09/03 Javascript
js实现前面自动补全位数的方法
2018/10/10 Javascript
详解关于element级联选择器数据回显问题
2019/02/20 Javascript
你了解vue3.0响应式数据怎么实现吗
2019/06/07 Javascript
[27:28]Ti4 冒泡赛第二天 iG vs NEWBEE 1
2014/07/15 DOTA
python实现巡检系统(solaris)示例
2014/04/02 Python
为Python的web框架编写前端模版的教程
2015/04/30 Python
python实现定时自动备份文件到其他主机的实例代码
2018/02/23 Python
Python3之不使用第三方变量,实现交换两个变量的值
2019/06/26 Python
python变量的作用域是什么
2020/05/26 Python
使用canvas生成含有微信头像的邀请海报没有微信头像问题
2019/10/29 HTML / CSS
Timberland法国官网:购买靴子、鞋子、衣服、夹克和配饰
2019/11/30 全球购物
爱祖国演讲稿
2014/05/04 职场文书
2014年宣传工作总结
2014/11/18 职场文书
劳动保障个人工作总结
2015/03/04 职场文书
Vue.js中v-for指令的用法介绍
2022/03/13 Vue.js
Django框架之路由用法
2022/06/10 Python