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样式结构是下图

实际代码是下图

相关推荐
测试小小怪下士2 小时前
怎么用Python+selenium自动化生成测试报告
selenium·测试工具·自动化
Sweet_vinegar4 小时前
Wireshark
网络·测试工具·安全·wireshark·ctf·buuctf
惜.己12 小时前
Jmeter中的配置原件(三)
功能测试·测试工具·jmeter·1024程序员节
惜.己12 小时前
Jmeter中的配置原件(二)
测试工具·jmeter·1024程序员节
牛奔14 小时前
解决Mac M芯片 Wireshark 运行rvictl -s 后,出现Starting device failed
网络·测试工具·macos·wireshark
惜.己16 小时前
Jmeter中的配置原件(五)
功能测试·测试工具·jmeter·github·1024程序员节
User_undefined18 小时前
selenium大量并发连接驱动超时
selenium·测试工具
南东山人1 天前
使用pktgen进行高吞吐发包
linux·测试工具·udp·wireshark·压力测试
Cici_ovo1 天前
使用Wireshark获取USB HID(Human Interface Device)报告描述符
网络·测试工具·wireshark
Draina1 天前
抓包分析:wireshark抓不到TLS1.3数据包中证书的解决方案
网络·测试工具·wireshark