gpt4 book ai didi

selenium - 使用 selenium webdriver 跳过一个 div 后继续计数 DIVS

转载 作者:行者123 更新时间:2023-12-02 02:17:28 26 4
gpt4 key购买 nike

我想跳过GoTop类div并继续计算父类中div的数量。

<div class="parent">
<div>
<div>
<div>
<div>
<div>
<div class="GoTop">
<div>
some more div's ......
</div>

我已经尝试过以下方法,但我得到的只是大小为 5,请帮助

size = driver.findElements(By.xpath("//div[@class='parent']/div [not(contains(@class,'GoTop'))]")).size();

最佳答案

您尝试过的代码看起来是正确的,我认为您应该尝试使用 WebDriverWait 等待 divs 元素与尝试过的定位器一起出现。

我建议您尝试使用 By.cssSelector() 来实现如下所示的效果:-

WebDriverWait wait = WebDriverWait(driver, 10);
int size = wait.until(ExpectedConditions.presenceOfAllElementsLocatedBy(By.cssSelector("div.parent > div:not(.GoTop)"))).size();

已编辑:- 如果您获得的元素仍然少于当前总数,您可以尝试使用 ExpectedCinditions.numberOfElementsToBeMoreThan这将等到找到的元素总数等于或大于给定数量,如下所示:-

WebDriverWait wait = WebDriverWait(driver, 10);
int size = wait.until(ExpectedConditions.numberOfElementsToBeMoreThan(By.cssSelector("div.parent > div:not(.GoTop)"), 6)).size();

关于selenium - 使用 selenium webdriver 跳过一个 div 后继续计数 DIVS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39736081/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com