selenium元素定位疑难(一):contains的用法
对于HTML中元素的定位用的最多的是xpath方法,xpath中用的最多的是text对象,也是最稳定的定位方式(如果写的好)。但是xpath用来也是最难的一个,比如这次要说的text定位。
如图:
当定位其中的“任务类型”的li 标签时,这样写:.//li[text()='任务类型:']
如果想使用contains(可以只指定部分包含的信息):.//li[contains(text(),'任务类')]
这里客串一下:.//li[starts-with(text(),'任务类')]、.//li[strats-with(.,'任务类')]
看起来很完美,就这么简单?并不是!,如下:
试试定位“单次预约任务(P)”的li 标签,发现上面的方法失效了!
那改怎么办?不急,说他最好用,那就当然有办法,look:.//li[contains(.,'单次预约')]
perfect!
注:以上测试是在Firefox上完成的