Selenium:元素判断
判断元素是否存在
1、前面有介绍过使用Python中的sleep()方法来进行等待:等待一定的时间,让元素加载出来后再执行代码
⑴但是元素加载出来的时间是不固定的,有时长有时短,因此我们等待的时间就不固定了
⑵最好的办法是:每隔一定的时间后使用Selenium中的一些方法来判断元素是否加载了出来(这个就是后面要介绍的"显式等待")
①元素加载出来了,就不继续等待了
②元素未加载出来,就继续等待
2、另外就是在做自动化的时候,有时候会需要判断元素是否存在,iframe是否存在,以及一些弹出框是否存在,以便确定我们的操作是否符合预期
⑴相当于一种断言方式了
3、selenium提供了一个专门用于元素判断的模块:expected_conditions
⑴这个模块用的比较多的场景就是和显示等待一起使用,通过显示等待的方法来循环判断是否元素是否出现
⑵至于显示等待就后面介绍,这里单独介绍元素判断方法
常用方法介绍
1、expected_conditions的方法种类有很多。大部分都是判断元素的,但是也有判断其他的
方法名 | 描述 |
Selenium:元素判断相关推荐
- Python Selenium.WebDriver 判断元素是否存在
Python Selenium.WebDriver 判断元素是否存在 文章目录 Python Selenium.WebDriver 判断元素是否存在 一.判断元素是否存在 二.异常捕获 三.多元素捕获 ...
- Selenium - 元素等待与智能等待
UI层面的自动化的测试,由于网络.电脑配置等因素的不同,导致页面的加载速度不同,因此为了保证测试脚本的稳定性,需要在脚本中添加相应的等待时间. 1. 休眠等待 添加休眠非常简单,只需要引入python ...
- Selenium元素定位方法大全
目录 一.背景 二.浏览器定位元素 三.Selenium元素定位代码 3.1 通过id定位 3.2 通过class定位 3.3 通过name定位 3.4 通过tagname定位 3.5 通过link_ ...
- python xpath定位打印元素_python基础教程:8种selenium元素定位的实现
前言 selenium是一个非常厉害的爬虫利器,不,简直是神器了,它可以自动的控制浏览器,但是你得告诉浏览器,你想干嘛,爬哪里,这时候就要用到元素定位了,在HTML中都有着不同的标签和属性,selen ...
- java8种定位_python基础教程:8种selenium元素定位的实现
前言 selenium是一个非常厉害的爬虫利器,不,简直是神器了,它可以自动的控制浏览器,但是你得告诉浏览器,你想干嘛,爬哪里,这时候就要用到元素定位了,在HTML中都有着不同的标签和属性,selen ...
- 面试被问:Selenium元素定位不到问题,如何回答?
1.maven有什么作用? 最常用的maven相关功能大概以下几种: a. 管理jar依赖 b. 构建项目(打包.编译等) c. 发布项目(共享.上传至服务器,供他人使用) Maven用配置文件的方式 ...
- 运用js解决java selenium元素定位问题
运用js解决java selenium元素定位问题 参考文章: (1)运用js解决java selenium元素定位问题 (2)https://www.cnblogs.com/limxiaosi/p/ ...
- 解决selenium版本过时 和 selenium - 元素定位
# selenium模板# @Time : 2022/6/29 16:40# (1)导入selenium from selenium import webdriver from selenium.we ...
- Python+Selenium爬虫--判断元素是否存在
前言:最近在学习爬虫时,由于要在同一个函数中实现寻找多个网页元素,找了很多资料也没有发现有能判断元素是否存在的,所以我整理了一下找到的部分答案和我自己写的解决方法. 文章目录 is_displayed ...
最新文章
- leetcode算法题--两数之和
- ML之SVM(三种):基于三种SVM(linearSVR、polySVR、RBFSVR)对Boston(波士顿房价)数据集(506,13+1)进行价格回归预测并对比各自性能
- 蓝桥杯_算法训练_ALGO12_摆动序列
- php数组转为js json,javascript-将数组php转换为JSON时出错
- 接口和抽象类是否继承了Object
- 二分查找和二叉查找树
- Windows10系统下虚拟环境的安装与使用
- Mr.J-- 图片墙动画效果
- 为类型库(Type Library)生成帮助文件
- 通用软件滤波算法-前序
- CVPR 2021 UniT: Multimodal Multitask Learning with a Unifified Transformer
- Highcharts-制作图表的js库
- 【综合类型第 8 篇】陆游和唐婉的故事
- Vue3.0 directive的使用说明
- linux学习笔记(6)磁盘管理
- Ubuntu 16.04安装Matlab R2016b
- IoT开源平台Thingsboard二次开发研究
- #榜样的力量#航班管家全球大交通出行疫情追踪服务系统丨数据猿新冠战“疫”公益策划...
- 关于Omnipeek遇到“试图执行的操作不受支持”问题
- IT外企那点儿事(20): 程序员的大侠情结