xpath定位不到元素,试试这招?

本文分享了一种在H5页面中快速定位元素的方法,通过复制H5页面链接,在谷歌浏览器控制台使用手机模式,选中目标元素并复制其xpath路径,此方法适用于难以定位的元素,尤其是当传统方法如@text定位失败时。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在做一个自动化测试项目,遇到公众号元素定位无法找到的情况,通过uiautomator查看元素,按钮有text值,试了很多方法,通过xpath的@text方法没找到,后来也通过层级也没找到,而且找元素的等待时间我也都设置的30s,姑且认为我的xpath写法是正确的,总之就是没找到的这个元素


640?wx_fmt=jpeg


如果是原生Android app,不涉及H5,目前我还从未遇到@text找不到元素的情况,但这里因为是公众号里面的元素,属于在微信APP里面的H5界面,可能也确实会因为一些我目前知识面所未触及的情况找不到元素

到这里,其实上面我已经耽误了很长时间来解决这个问题了,按照我之前的思路,从uiautomator查看元素没一次试验成功过
后来,经多方了解,发现了一个简单好用的方法,几秒钟就可以快速定位元素,不失为一种你尝试过很多方法仍旧解决不了的救命稻草
1、第一步复制H5页面链接,用谷歌浏览器打开,控制台点击手机模式,我这里只是为了大图演示,就不切换手机模式了

640?wx_fmt=jpeg


2、第二步
选中我要选的元素,比如我这里想定位标题,直接右键点击,copy, copy xpath即可完成元素xpath路径的提取
640?wx_fmt=jpeg

接下来验证我们复制的xpath路径,在console控制台下,输入$x('复制的xpath路径粘贴到这里'),可以很明显看到标题内容被我们提取到

640?wx_fmt=jpeg


可能你会说,这个不过瘾,感觉是可有可无的,他复制的xpath路径里面也是通过id选择的,这个一般不会错,自己也很容易就写出来了

那么大招来了,假如我让你提取正文内容呢,并且正文中元素文本一样,标签一样,id一样,你怎么办?比如下方,就是这种情况

640?wx_fmt=jpeg


如果你自己写xpath,恐怕要自己去数层级关系了,属于第几个元素,不光慢,还容易出错,如果尝试复制xpath路径,很完美,层级下标都给我们复制出来了

640?wx_fmt=jpeg


总结:

这种方法如果感兴趣可以用用,一般爬虫和web上我一般很少用,也是在测H5页面的时候走投无路了,才用这个方法,不过有个缺点,有些时候,你复制的xpath路径可能很长很长,不利于直观的去看

python爬虫人工智能大数据公众号

640?wx_fmt=gif


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值