【发布时间】:2022-01-16 03:32:21
【问题描述】:
我需要从 XPath 中排除元素,其中 display: none; 在 CSS 类中设置。当给定元素的 CSS 类中 display: none; 设置为 as pointed out in this comment 时,solution suggested here 将不起作用。
在我的具体示例中,该元素有一个名为 error-result 的类,其 CSS 设置为:
.error-result {
display: none;
}
这是我尝试过的 XPath:
.//*[contains(text(),'XXXXXX')][not(ancestor::div[contains(@style,'display: none')])][not(descendant::div[contains(@style,'display: none')])]
问题是,Selenium 仍然识别出不需要的元素,因为 display: none;仅在 CSS 类中设置。
如何排除此类元素?
我在 Java 中使用 Selenium WebDriver。
谢谢
【问题讨论】:
-
这听起来像X-Y problem。与其寻求解决问题的帮助,不如编辑您的问题并询问实际问题。你想做什么?
-
@DebanjanB 我需要识别某个元素,但前提是 CSS 类中没有设置
display: none。 -
@BradfordGriggs 我建议你接受并支持你的答案。这可能会增加您获得答案的机会..
-
@Prophet 我几乎对我的问题给出的每个答案都投了赞成票(几乎每个答案至少有 1 个赞成票)。我也接受了所有人,除了一个。一个答案实际上并没有回答这个问题,但提供了丰富的信息,所以我投了赞成票,但我没有接受作为答案。
-
你这样做不是为了我,我的朋友。我真的不在乎。它可能会帮助你。
标签: java css selenium selenium-webdriver webdriver