如何使用c#在selenium webdriver ie中实现网页中的查找文本

本文关键字:实现 网页 查找 文本 ie 何使用 selenium webdriver | 更新日期: 2023-09-27 18:30:10

我试过这个代码,但仍然有一个错误:

        IWebDriver driver;
        driver = new InternetExplorerDriver("C:''", options);
        driver.Navigate().GoToUrl("http://www.marathonbet.com/en/");

        IJavaScriptExecutor js = driver as IJavaScriptExecutor;
        string title = (string)js.ExecuteScript("window.find('Japan',0,0,0,0,0,1)");

所以我想知道是否有这个函数

如何使用c#在selenium webdriver ie中实现网页中的查找文本

的替代方案

如果你只想搜索一些文本,你可以实现这样的东西:

boolean isTextPresent(String text){
    return driver.getPageSource().contains(text)
}

为了抛出一种不同的方法,请尝试XPath;

    String identifierXpath = String.format("//*[contains(text(),'%s')]", searchTerm);
    By identifier = By.xpath(identifierXpath);
    List<WebElement> elementsWithText = driver.findElements(identifier);

这种方法允许您访问实际包含任何感兴趣的文本id的元素,当然,还可以使用".size()>0"来决定文本是否真的存在。

我可能会在findElements之前将隐式等待时间更改为0秒,然后再重置,但这段代码应该会让您了解我试图理解的内容。显然,如果是在helper方法中,这是有意义的。

请注意,我并不是说这比使用"getPageSource()"更好或更高效,它只是解决问题的一种不同方法。

一个很大的缺陷是它会区分大小写!然而,您可以将xpath更改为不区分大小写,但它会复杂得多,但可以在

中执行