首页 > 解决方案 > 在 C# 中使用 ChromeDriver 单击每个包含特定类名的按钮

问题描述

我正在使用 ChromeDriver,我希望它点击页面上包含特定类名的每个按钮。

using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;

ChromeDriverService chromeDriverService = ChromeDriverService.CreateDefaultService();
chromeDriverService.HideCommandPromptWindow = true;
ChromeOptions options = new ChromeOptions();
options.AddArgument("ignore-certificate-errors");
ChromeDriver driver = new ChromeDriver(chromeDriverService, options);

driver.Url = "https://www.some-url.com";
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromMilliseconds(2);

我在想一些事情:

driver.FindElement(By.ClassName("some-class-name")).Click();

然而,这只点击一个按钮。我怎样才能做到这一点来点击网页上的每个按钮?

标签: c#seleniumselenium-webdriverwebdriverselenium-chromedriver

解决方案


尝试使用FindElements而不是FindElement

IList<IWebElement> list= driver.FindELements(By.ClassName("some-class-name");
foreach (IWebElement element in list)
{
    element.Click();
}

推荐阅读