通过部分Id / Css查找所有元素,并将它们放在列表中,在C#中使用Selenium

时间:2017-10-19 08:09:51

标签: c# selenium visual-studio-2017 selenium-chromedriver

我正在尝试从搜索结果页面中找到所有元素并将它们放在列表中。第一个问题是找到所有元素。我找到一个特定元素没有问题:

driver.FindElement(By.CssSelector("#event_395634"));

OR:

driver.FindElement(By.Id("event_395634"));

但是如何找到以“#event_”或“event _”开头的每个元素?

我如何将它们列入清单?这是一个开始吗?:

List<IWebElement> eventList = new List<IWebElement>();
events = driver.FindElements(By.?("Magic code");

....然后呢?还是我离开了? 我打算稍后在列表中循环。

1 个答案:

答案 0 :(得分:0)

有一个CSS选择器,用于选择属性以给定字符串开头的所有元素 您可以将其与By.CssSelector一起使用。

var events = driver.FindElements(By.CssSelector("[id^=event_]"));

它应该工作。