【发布时间】:2019-01-15 23:42:51
【问题描述】:
这是我要从中提取的表。 Checkbox 的元素是这样的。
我正在通过使用 datagridtable 抓取数据。
string Header = driver.FindElement(By.CssSelector("#gridComponent > div.k-grid-header > div > table > thead > tr")).Text;
// Get rows strings
foreach(string row in Header.Split('\r'))
{
DataRow dataRow = dt.NewRow();
}
string[] HeaderSplit = Header.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
// create DataTable
foreach (string c in HeaderSplit)
{
dt.Columns.Add(c);
}
var table = driver.FindElement(By.CssSelector("#gridComponent"));
//Get Row value
foreach (var row in table.FindElements(By.TagName("tr")))
{
//Configure Number of Col and row
int cellIndex = 0;
string[] arr = new string[11];
//Get Cell Data
foreach (var cell in row.FindElements(By.TagName("td")))
{
Console.WriteLine(cell);
//Number of Col Data Load
if (cellIndex <= 10)
{
arr[cellIndex] = cell.Text;
}
else
continue;
cellIndex++;
}
dt.Rows.Add(arr);
}
我无法选择复选框,因为它不是文本形式。我应该怎么做才能用 True&False 从网站中的复选框中抓取所有数据?
【问题讨论】:
-
你试过
element.Selected吗? seleniumhq.github.io/selenium/docs/api/dotnet/?topic=html/…
标签: c# selenium selenium-webdriver web-scraping selenium-chromedriver