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中__init__和__new__的区别详解
Jul 09 Python
Python自动化构建工具scons使用入门笔记
Mar 10 Python
浅析python中的分片与截断序列
Aug 09 Python
Python MySQL数据库连接池组件pymysqlpool详解
Jul 07 Python
LRUCache的实现原理及利用python实现的方法
Nov 21 Python
Python实现矩阵转置的方法分析
Nov 24 Python
python 巧用正则寻找字符串中的特定字符的位置方法
May 02 Python
Python运维自动化之nginx配置文件对比操作示例
Aug 29 Python
python中的json总结
Oct 11 Python
一文带你了解Python中的字符串是什么
Nov 20 Python
python爬取盘搜的有效链接实现代码
Jul 20 Python
Python模拟键盘输入自动登录TGP
Nov 27 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中的Array数组和foreach
2016/11/06 PHP
javascript 日期时间函数(经典+完善+实用)
2009/05/27 Javascript
jQuery EasyUI API 中文文档 - PropertyGrid属性表格
2011/11/18 Javascript
随窗体滑动的小插件sticky源码
2013/06/21 Javascript
一个封装js代码-----展开收起效果示例
2013/07/03 Javascript
javascript去掉前后空格的实例
2013/11/07 Javascript
jQuery计算textarea中文字数(剩余个数)的小程序
2013/11/28 Javascript
javascript实现状态栏中文字动态显示的方法
2015/10/20 Javascript
学习JavaScript设计模式之迭代器模式
2016/01/19 Javascript
JS实现刷新父页面不弹出提示框的方法
2016/06/22 Javascript
jquery获取链接地址和跳转详解(推荐)
2017/08/15 jQuery
React-native桥接Android原生开发详解
2018/01/17 Javascript
基于JS开发微信网页录音功能的实例代码
2019/04/30 Javascript
Node.js实现用户评论社区功能(体验前后端开发的乐趣)
2019/05/09 Javascript
JS中的一些常用的函数式编程术语
2019/06/15 Javascript
基于Echarts图表在div动态切换时不显示的解决方式
2020/07/20 Javascript
[06:06]2018DOTA2亚洲邀请赛主赛事第四日战况回顾 全明星赛欢乐上演
2018/04/07 DOTA
Python守护进程用法实例分析
2015/06/04 Python
Python语言生成水仙花数代码示例
2017/12/18 Python
获取python的list中含有重复值的index方法
2018/06/27 Python
浅谈pycharm的xmx和xms设置方法
2018/12/03 Python
python 将对象设置为可迭代的两种实现方法
2019/01/21 Python
python 实现二维列表转置
2019/12/02 Python
python3实现raspberry pi(树莓派)4驱小车控制程序
2020/02/12 Python
Python request使用方法及问题总结
2020/04/26 Python
css3的@media属性实现页面响应式布局示例代码
2014/02/10 HTML / CSS
德国最大的网上鞋店之一:Schuhe24.de
2017/06/10 全球购物
TripAdvisor斯洛伐克:阅读评论、比较价格和酒店预订
2018/04/25 全球购物
集世界奢侈品和设计师品牌的意大利精品买手店:Tessabit
2019/08/17 全球购物
某IT外企面试题-二分法求方程!看看大家的C++功底
2015/07/04 面试题
畜牧兽医本科生个人的自我评价
2013/10/11 职场文书
生日派对邀请函
2014/01/13 职场文书
税务干部群众路线教育实践活动自我剖析材料
2014/09/21 职场文书
个人政治思想总结
2015/03/05 职场文书
教师节校长致辞
2015/07/31 职场文书
聊一聊python常用的编程模块
2021/05/14 Python