В настоящее время пытается очистить таблицу с этой страницы в сетку, используя пакет htmlagilitypack.Я считаю, что мой код успешно извлекает таблицу между комментариями, но когда он собирается создать таблицу данных, он говорит, что не может найти столбец 8, который, очевидно, не должен существовать в этом контексте.Я немного новичок в этом и был бы очень признателен за объяснение того, что я делаю не так
private void GetTeamStats()
{
var webGet = new HtmlWeb();
var getPage = webGet.Load("https://www.teamrankings.com/nba/stat/effective-field-goal-pct");
var commentNode = getPage.DocumentNode.SelectNodes("//comment()[contains(.,'table-filters')]/following::*[not(preceding::comment()[contains(.,'main-wrapper')])]");
var commentHtml = commentNode.Select(c1 => c1.SelectSingleNode("//table"));
DataTable dt = new DataTable();
dt.Columns.Add("Rk", typeof(string));
dt.Columns.Add("Team", typeof(string));
dt.Columns.Add("2018", typeof(string));
dt.Columns.Add("Last3", typeof(string));
dt.Columns.Add("Last1", typeof(string));
dt.Columns.Add("Home", typeof(string));
dt.Columns.Add("Away", typeof(string));
dt.Columns.Add("2017", typeof(string));
foreach (var table in commentHtml)
{
foreach (var row in table.SelectNodes("//tr"))
{
var dr = dt.NewRow();
dt.Rows.Add(dr);
int i = 0;
foreach (var cell in row.SelectNodes("//td"))
{
dr[i++] = cell.InnerText;
}
}
gvTeamStats.DataSource = dt;
}
}
Исключение говорит "System.IndexOutOfRangeException:" Не удается найти столбец 8. "и выбрасываетсяэта строка кода
dr[i++] = cell.InnerText;