gpt4 book ai didi

c# - 等待页面加载

转载 作者:行者123 更新时间:2023-11-30 23:07:35 25 4
gpt4 key购买 nike

我正在尝试创建一个等待页面通过 javascript 加载的方法,但出现错误。可能我没有正确使用该方法。

public static void WaitForLoad(this IWebDriver driver, int timeoutSec = 15)
{
WebDriverWait wait = new WebDriverWait(driver, new TimeSpan(0, 0, timeoutSec));
wait.Until(wd => wd.ExecuteJavaScript("return document.readyState") == "complete");
}

错误是:

The type arguments for method 'WebdriverExtensions.ExecuteJavaScript<T>(IWerbDriver,string,params object[]' cannot be inferred from the usage.Try specifying the type arguments explicity)

最佳答案

WaitForLoad(...) 函数中,您正在检查 ("return document.readyState") == "complete"

实际上,对函数 WaitForLoad(...) 的调用纯粹是重载,没有实际效果。这是因为 Selenium DLL/JARS/Modules 的设计方式使得 webdriver 仅在 Browser您正在使用将 document.readyState == "complete" 发送到 WebDriver

在你的情况下,如果我们wait即引入ExplicitWait,而不是验证document.readyState == "complete",它会更有效对于我们打算与 ElementIsVisible(By)ElementToBeClickable(By)ElementToBeClickable 中的适当子句进行交互的下一个 WebElement (IWebElement), ElementToBeSelected(IWebElement, Boolean)

关于c# - 等待页面加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47130366/

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