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中处理字符串的相关的len()方法的使用简介
May 19 Python
Python实现的简单模板引擎功能示例
Sep 02 Python
Python使用matplotlib简单绘图示例
Feb 01 Python
使用Python监视指定目录下文件变更的方法
Oct 15 Python
python3+PyQt5 实现Rich文本的行编辑方法
Jun 17 Python
Python下应用opencv 实现人脸检测功能
Oct 24 Python
使用卷积神经网络(CNN)做人脸识别的示例代码
Mar 27 Python
Python HTMLTestRunner库安装过程解析
May 25 Python
Python数据可视化常用4大绘图库原理详解
Oct 23 Python
Autopep8的使用(python自动编排工具)
Mar 02 Python
一文搞懂Python Sklearn库使用
Aug 23 Python
Python使用Beautiful Soup(BS4)库解析HTML和XML
Jun 05 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
海贼王动画变成“真人”后,凯多神还原,雷利太帅了!
2020/04/09 日漫
php中通过数组进行高效随机抽取指定条记录的算法
2013/09/09 PHP
PHP单例模式模拟Java Bean实现方法示例
2018/12/07 PHP
两个SUBMIT按钮,如何区分处理
2006/08/22 Javascript
jquery CSS选择器笔记
2010/03/29 Javascript
使用PHP+JQuery+Ajax分页的实现
2013/04/23 Javascript
JavaScript图片放大技术(放大镜)实现代码分享
2013/11/14 Javascript
推荐6款基于jQuery实现图片效果插件
2014/12/07 Javascript
DOM基础教程之使用DOM + Css
2015/01/20 Javascript
jQuery+slidereveal实现的面板滑动侧边展出效果
2015/03/14 Javascript
jQuery选择器源码解读(四):tokenize方法的Expr.preFilter
2015/03/31 Javascript
微信JSSDK上传图片
2015/08/23 Javascript
jQuery右侧选项卡焦点图片轮播特效代码分享
2015/09/05 Javascript
nodejs 的 session 简单使用
2016/06/06 NodeJs
js实现StringBuffer的简单实例
2016/09/02 Javascript
微信小程序实现点击文字页面跳转功能【附源码下载】
2017/12/12 Javascript
ionic3实战教程之随机布局瀑布流的实现方法
2017/12/28 Javascript
浅析node.js的模块加载机制
2018/05/25 Javascript
iview在vue-cli3如何按需加载的方法
2018/10/31 Javascript
vue 解决遍历对象显示的顺序不对问题
2019/11/07 Javascript
python Django模板的使用方法
2016/01/14 Python
Python的for和break循环结构中使用else语句的技巧
2016/05/24 Python
Python字典实现简单的三级菜单(实例讲解)
2017/07/31 Python
python深度优先搜索和广度优先搜索
2018/02/07 Python
python pandas 如何替换某列的一个值
2018/06/09 Python
在Python运行时动态查看进程内部信息的方法
2019/02/22 Python
Numpy之将矩阵拉成向量的实例
2019/11/30 Python
PHP如何删除一个Cookie值
2012/11/15 面试题
c语言常见笔试题总结
2016/09/05 面试题
Linux面试题LINUX系统类
2014/11/19 面试题
舞蹈专业大学生职业规划范文
2014/03/12 职场文书
经营理念口号
2014/06/21 职场文书
普通党员对照检查材料
2014/08/28 职场文书
小学生纪念九一八事变演讲稿
2014/09/14 职场文书
2014年消防工作总结
2014/11/21 职场文书
埃及王子观后感
2015/06/16 职场文书