java - 如何使用 xpath 在嵌套 xml 中查找 Web 元素

标签 java selenium selenium-webdriver xpath

我尝试使用 xpath 单击电子商务网站菜单上的元素,但找不到它。

我直接尝试通过以下方法到达它,但没有成功。

driver.findElement(By.xpath("//*[@id=\"w_1561138892240_cbx\"]")).click();

然后我尝试通过考虑嵌套 xml 来实现它,但无法再次执行。

driver.findElement(By.xpath("//li[@name='Brand']//div[@id='w1-w1-w0-w0-multiselect[8]']//input[@id='w_1561136068937_cbx']")).click();

如何解决这个问题?

nested xml nested xml 2

最佳答案

这是您可以使用的 xpath。

//li[contains(@class,'__list--aspect')]//input[@aria-label='Apple']

如果你想严格使用 id 则使用下面的(不建议)

 //li[contains(@class,'__list--aspect')]//input[@id='w_1561151835676_cbx']

截图 enter image description here

关于java - 如何使用 xpath 在嵌套 xml 中查找 Web 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56710023/

相关文章:

python - 您可以将选择器列表写入 SQL 中的一列吗?

ruby - 如何在 goto 之前设置 cookie?

java - 使用位数查找给定范围之间的回文数

java - 在 Java 中的不同行中打印多个 ArrayList 对象

ruby-on-rails - 在 Chrome 中使用 Selenium Webdriver 时, session 未创建异常 : Chrome version must be >= x. y.z

Python Selenium - 等到表单提交后加载下一页

javascript - Python - selenium - AngularJS 下拉菜单,如何点击它们?

css - Selenium Webdriver XPATH 我可以找到包含某些文本的标签,但我无法在标签标签上方获得输入标签复选框

java - 如何使用Webdriver Selenium获取 "style"元素的值

java - JSP中如何控制显示位数?