selenium已知一个元素定位同级别的另一个元素

1.需求与实际情况

看下图来举例

(1)需求

想点击test22(即序号-第9行)这一行中右边的"复制"这一按钮

(2)实际情况

只能通过id或者class定位到文件名这一列的元素,而操作这一列的元素是不能单独通过class、id或者其他什么样式定位到(因为整个列中:重命名、复制、删除这些个按钮都是一样的css样式)

2.解决方法

通过xpath来定位同级的元素。

即:driver.find_element(By.XPATH,"//a[@class='test22这一元素对应的class']/..//a[@class='test22这一行的"复制"对应的class']")

解释就是:"//a[@class='test22这一元素对应的class']"-->这一步是定位到了test22所在的这一行;"/+两个点"-->回到test22的上一级元素;因为找到了test22的上一级此时再向下定位相同行的同级元素就是这一步-->"//a[@class='test22这一行的"复制"对应的class']"

3.实例

实际的css样式结构是下图

实际代码是下图

相关推荐
迷藏49420 小时前
# 发散创新:基于Selenium的自动化测试框架重构与实战优化在当今快速迭代的软件开
java·python·selenium·测试工具·重构
willhuo21 小时前
# 自动化数据采集技术研究与实现:基于Playwright的抖音网页自动化方案
运维·selenium·c#·自动化·chrome devtools·webview
小陈的进阶之路3 天前
web ui自动化测试
测试工具·ui
redaijufeng3 天前
网络爬虫学习:应用selenium获取Edge浏览器版本号,自动下载对应版本msedgedriver,确保Edge浏览器顺利打开。
爬虫·学习·selenium
Xiaoweidumpb3 天前
JMeter 压测实战全链路(三):登录接口压测实战・验证码+账号密码+登录全流程
测试工具·jmeter
壹方秘境3 天前
Wireshark 太难?ChatTCP 把 TCP 数据包变成“微信对话”
网络·测试工具·wireshark
老神在在0013 天前
商城系统(Mall)性能测试实战:从脚本搭建到结果分析
大数据·测试工具·jmeter·压力测试
网创联盟,知识导航3 天前
沐雨云香港直连500M大带宽云主机深度测评
经验分享·学习·测试工具
小陈的进阶之路3 天前
TestHub自动化测试平台部署使用
测试工具·ai