selenium判断元素是否存在的方法

文章目录

快捷方法

selenium没有exist_xxx相关的方法,无法直接判断元素存在。但是锁定元素时使用的browser.find_elements(By.CSS_SELECTOR, "css元素")会返回一个列表list,如果不存在这个元素就会返回一个空列表。因此我们曲线救国,比如:

py 复制代码
if len(browser.find_elements(By.CSS_SELECTOR, "a.paging_next")) == 0:
	# 元素不存在的逻辑
	pass
else:
	# 元素存在的逻辑
	pass

完整示例程序

比如使用如下代码获取一个网页:

py 复制代码
from selenium import webdriver
from selenium.webdriver.common.by import By

option = webdriver.ChromeOptions()
option.add_argument('--disable-gpu')
option.add_argument('lang=zh_CN.UTF-8')
prefs = {
    "profile.managed_default_content_settings.images": 2,  # 禁止加载图片
}
option.add_experimental_option("prefs", prefs)
browser = webdriver.Chrome(options=option)
browser.get("https://www.baidu.com")

得到百度的页面

此时如果随便索引一个,结果为0

py 复制代码
print(len(browser.find_elements(By.CSS_SELECTOR, "a.paging_next")))

而如果索引下面那一部分,得到结果18

py 复制代码
print(len(browser.find_elements(By.CSS_SELECTOR, "div#s-top-left a")))

索引网页内存在的内容,得到结果['新闻', 'hao123', '地图', '贴吧', '视频', '图片', '网盘', '更多', '', '', '', '', '', '', '', '', '', '']

py 复制代码
print([_v.text for _v in browser.find_elements(By.CSS_SELECTOR, "div#s-top-left a")])
相关推荐
weixin_440730509 小时前
Playwright介绍、特点、小例子还有与传统selenium的区别
selenium·测试工具·playwright
chuntian_tester20 小时前
测试中的提示词工程
人工智能·测试工具·ai
测试狗科研平台1 天前
电池材料表征、电芯制备与性能测试--测试狗先进能源中试服务
科技·测试工具·材料工程
啊阿狸不会拉杆2 天前
《计算机网络-自顶向下方法》2.8 小结、课后习题和 Wireshark 实验 读书笔记
计算机网络·测试工具·wireshark·因特网
PS测2 天前
Linux压力测试工具stress,能精确控制 CPU、内存、IO 负载类型和持续时间
测试工具
2601_962387822 天前
web自动化测试实战教程【selenium/unittest/pytest】【共193课
selenium·pytest·devops·web自动化测试·unittest
qianshi12132 天前
涂层划痕测试仪-精准评估涂层附着力,兼顾科研与工业质量检测
经验分享·测试工具·百度
PhotonixBay2 天前
3D共聚焦显微镜与探针式粗糙度仪:谁更适合亚表面损伤检测?
图像处理·人工智能·测试工具·3d
2601_962297252 天前
Python、Pytest、Allure、Selenium和Jenkins实现自动化测试集成实例
python·selenium·jenkins·pytest·allure
qianshi12132 天前
电化学腐蚀摩擦磨损试验机的工作原理、操作流程、适用范围行业和产品特点
测试工具·百度