这是我试图用来获取相应元素的代码的一部分,但它一直给我以下错误:
System.Collections.ObjectModel.ReadOnlyCollection`1 [OpenQA.Selenium.IWebElement]或 其他相同的
这也显示在她的行中的datagridview中。
package Student;
public class Example
{
int i = 10;//instance variable which is created under class
void age()// age is method here
{
int j=11;// local variable which is created under method
}
public static void main(String[] args) {
Example ex = new Example();//Creating the object
System.out.println("Display the valule" ex.age());
ex.age();
}
}
答案 0 :(得分:0)
首先是:据我所知,您所谈论的元素未包含在表格中。它是一个列表:<ul class="list-unstyled list-inline">...
(考虑你留下的网站链接评论)
如果您想查找这些元素,可以使用以下代码:
var elements = driver.FindElements(By.CssSelector("ul.list-inline > li > a"));
// Here you can iterate though links and do whatever you want with them
foreach (var element in elements)
{
Console.WriteLine(element.Text);
}
// Here is the collection of links texts
var linkNames = elements.Select(e => e.Text).ToList();
考虑到您得到的错误,我可能会假设您使用DataGridView来存储收集的数据,这非常不正确。 DataGridView用于查看MVC应用程序中的数据。没有用于存储表数据的标准Selenium类。有多种方法,但我不能建议你,因为我不知道你想要达到的目的。
答案 1 :(得分:0)
以下是我回答自己问题的方法:
IList<string> all = new List<string>();
foreach (var element in Gdriver.FindElements(By.ClassName("search-title")))
{
all.Add(element.Text);
table.Rows.Add(element.Text);
}