java - 在 webdriver 中使用 cssSelecter 匹配元素的更严格方法是什么

标签 java selenium webdriver css-selectors selenium-webdriver

我的网页上有 2 个元素

元素 1:<div class="DynarchCalendar-day DynarchCalendar-day-othermonth" dyc-type="date" unselectable="on" dyc-date="19960429">

元素 2:<div class="DynarchCalendar-day" dyc-type="date" unselectable="on" dyc-date="19960501">

如果我这样做

List<WebElement> DynarchCalendar_day  = driver.findElements(By
                    .cssSelector("div.DynarchCalendar-day"));

我将获得包含元素 1 和元素 2 的 WebElements 列表

如果我这样做

List<WebElement> DynarchCalendar_day  = driver.findElements(By
                    .cssSelector("div.DynarchCalendar-day.DynarchCalendar-day-othermonth"));

我将获得仅包含元素 1 的 WebElements 列表

我该怎么做才能只获得元素 2?

最佳答案

您可以使用 not 来查找包含 Dynarch Calendar-day 但不包含 Dynarch Calendar-day-othermonth 的 div。

CSS 选择器将是:

"div.DynarchCalendar-day:not(.DynarchCalendar-day-othermonth)"

关于java - 在 webdriver 中使用 cssSelecter 匹配元素的更严格方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17596425/

相关文章:

java - 在 Kotlin 中测试非空参数

c# - DBC(契约式设计)和AOP(面向切面编程)

python - 这个 selenium firefox 配置文件将文件下载到自定义文件夹有什么问题?

python - Selenium/Python - 如何按随机选择的像素滚动?

java - webdriver firefoxprofile 用户代理未按预期工作

selenium - Selenium 可以与现有的浏览器 session 交互吗?

java - 如何从 Subclipse 中的 svn repo 同步中排除文件?

java - 在 Chrome JAVA 的当前 session 中启动 Selenium WebDriver

java - 如何处理不断变化的 xpath、Selenium Webdriver、Java

java - java中栈的实现