selenium webdriver - 定位不固定ID

以126邮箱为例,我要定位下面的写信按钮

HTML代码如下

可以看到id为_mail_component_52_52,这样的ID是随时可能变化的,所以我们先找到一个不变的ID:dvNavTop

1 driver.findElement(By.cssSelector("#dvNavTop"))

定位好了之后,我们在dvNavTop下方找到对应的按钮

1 List<WebElement> bList = driver.findElement(By.cssSelector("#dvNavTop"))
2                       .findElements(By.cssSelector("li[id^=‘_mail_component‘]"));
3 bList.get(1).click();    

解释一下li[id^=‘_mail_component‘]

li:代表html标签

id^= :代表id以_mail_component开头

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。