selenium判断元素是否存在的两种方法小结


Posted in Python onDecember 07, 2020

在selenium中没有对应的方法,需要自己去写。

  • 元素存在,但不唯一,操作元素会报错
  • 元素不存在,操作元素也会报错

第一种:捕获异常

弊端:只要页面上有元素,不几个,都返回True

from selenium import webdriver
import unittest
class Test1(unittest.TestCase):
# 一、准备浏览器驱动、网站地址
# setUp在每个测试函数运行前运行,注意大小写;self不能省略
 def setUp(self):
 self.driver=webdriver.Chrome()
 self.baseurl="https://www.baidu.com"
 
# 二、打开浏览器,发送请求
 函数名必须以test开头
 def test_01(self):
 browser=self.driver
 browser.get(self.baseurl)
# 四、调用方法,判断元素是否存在
 flag=Test1.isElementExist(self,“input”)
 if flag:
  print(“该元素存在”)
 else:
  print(“该元素不存在”)
# 三、判断元素是否存在的方法
 def isElementExist(self):
 flag=True
 browser=self.driver
 try:
  browser.find_element_by_css_selector(element)
  return flag
 except:
  flag=False
  return flag
# 五、运行所有以test开头的测试方法
if __name__=="__main__":
 unittest.main()

第二种:find_elements方法

#除第三步,其他步骤同上
def isElementExist(self):
 flag=True
 browser=self.driver
 ele=browser.find_elements_by_css_selector(element)
 if len(ele)==0:
 flag=False
 return flag
 if len(ele)==1:
 return flag
 else:
 flag=False
 return flag

到此这篇关于selenium判断元素是否存在的两种方法小结的文章就介绍到这了,更多相关selenium判断元存在 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python类继承与子类实例初始化用法分析
Apr 17 Python
举例详解Python中yield生成器的用法
Aug 05 Python
python中利用队列asyncio.Queue进行通讯详解
Sep 10 Python
关于Python如何避免循环导入问题详解
Sep 14 Python
Python将多个excel文件合并为一个文件
Jan 03 Python
python排序函数sort()与sorted()的区别
Sep 18 Python
Python解决线性代数问题之矩阵的初等变换方法
Dec 12 Python
实例详解python函数的对象、函数嵌套、名称空间和作用域
May 31 Python
Python 图像处理: 生成二维高斯分布蒙版的实例
Jul 04 Python
django项目登录中使用图片验证码的实现方法
Aug 15 Python
python 命名规范知识点汇总
Feb 14 Python
python判断两个序列的成员是否一样的实例代码
Mar 01 Python
pycharm实现猜数游戏
Dec 07 #Python
Python Selenium XPath根据文本内容查找元素的方法
Dec 07 #Python
Selenium关闭INFO:CONSOLE提示的解决
Dec 07 #Python
pyqt5实现井字棋的示例代码
Dec 07 #Python
Selenium环境变量配置(火狐浏览器)及验证实现
Dec 07 #Python
详解BeautifulSoup获取特定标签下内容的方法
Dec 07 #Python
使用BeautifulSoup4解析XML的方法小结
Dec 07 #Python
You might like
关于php curl获取301或302转向的网址问题的解决方法
2011/06/02 PHP
解析PHP函数array_flip()在重复数组元素删除中的作用
2013/06/27 PHP
php使用strip_tags()去除html标签仍有空白的解决方法
2016/07/28 PHP
[原创]php集成安装包wampserver修改密码后phpmyadmin无法登陆的解决方法
2016/11/23 PHP
解决thinkphp5未定义变量会抛出异常,页面错误,请稍后再试的问题
2019/10/16 PHP
javascript的数据类型、字面量、变量介绍
2012/05/23 Javascript
js操作CheckBoxList实现全选/反选(在客服端完成)
2013/02/02 Javascript
jquery的ajaxSubmit()异步上传图片并保存表单数据演示代码
2013/06/04 Javascript
用jquery存取照片的具体实现方法
2013/06/30 Javascript
extjs 时间范围选择自动判断的实现代码
2014/06/24 Javascript
《JavaScript DOM 编程艺术》读书笔记之JavaScript 简史
2015/01/09 Javascript
easyui Draggable组件实现拖动效果
2015/08/19 Javascript
简单纯js实现点击切换TAB标签实例
2015/08/23 Javascript
jQuery插件实现静态HTML验证码校验
2015/11/06 Javascript
详细谈谈AngularJS的子级作用域问题
2016/09/05 Javascript
将Sublime Text 3 添加到右键中的简单方法
2017/12/12 Javascript
vue 实现强制类型转换 数字类型转为字符串
2019/11/07 Javascript
Python操作列表之List.insert()方法的使用
2015/05/20 Python
Python Web框架Tornado运行和部署
2020/10/19 Python
python对DICOM图像的读取方法详解
2017/07/17 Python
Request的中断和ErrorHandler实例解析
2018/02/12 Python
python如何从文件读取数据及解析
2019/09/19 Python
python3多线程知识点总结
2019/09/26 Python
python实现扑克牌交互式界面发牌程序
2020/04/22 Python
Pytorch高阶OP操作where,gather原理
2020/04/30 Python
Pycharm中安装wordcloud等库失败问题及终端通过pip安装的Python库如何添加到Pycharm解释器中(推荐)
2020/05/10 Python
10个python爬虫入门实例(小结)
2020/11/01 Python
捷克汽车配件和工具销售网站:TorriaCars
2018/02/26 全球购物
工业自动化毕业生自荐信范文
2014/01/04 职场文书
四好少年事迹材料
2014/01/12 职场文书
如何写辞职书
2015/02/26 职场文书
2015年社区卫生工作总结
2015/04/21 职场文书
开天辟地观后感
2015/06/09 职场文书
活动新闻稿范文
2015/07/17 职场文书
教师远程研修感悟
2015/11/18 职场文书
解决flex布局中子项目尺寸不受flex-shrink限制
2022/05/11 HTML / CSS