问答 请教 selenium 元素不断变化的问题

Kirakuin · 2024年06月01日 · 最后由 Kirakuin 回复于 2024年06月02日 · 5478 次阅读

有一个‘确认导入’ 的按钮(点击导入→弹窗→上传文件→点击确认导入),在公司的电脑 XPATH 定位的时候元素是一直不变的,CSS 会在 2~3 个元素之间变化(每次登录后就会变化)。在家里的电脑 XPATH 会有两种,CSS 也是两种,如图是我反复登录四次记录下的定位元素,对于这种变化的元素该如何去定位?尝试过用 LINK_TEXT 也不行。

----------------------------------------------------------------------------------------------------------------------------------------------------解决了,最后优化如下:

最佳回复

做个兼容?这几个都用,异常了就换一个

共收到 8 条回复 时间 点赞
仅楼主可见

用文本定位啊

试过

yueyue 回复

试了还是不行

做个兼容?这几个都用,异常了就换一个

恒温 回复

是做个判断,异常后取其中一个值是吗?刚接触 python😊

Kirakuin 回复

嗯。文本不行,就换 xpath,xpath 不行就用 css

恒温 回复

谢谢大佬,我这样写好像好几次都成功了:
try:
self.click(self.click_submit_loc1)

except:
try:
self.click(self.click_submit_loc2)
except:
self.click(self.click_submit_loc3)

Kirakuin 关闭了讨论 06月02日 20:52
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册