HtmlAgilityPack ArgumentOutOfRangeException 最后一行

本文关键字:一行 ArgumentOutOfRangeException 最后 HtmlAgilityPack | 更新日期: 2023-09-27 18:31:27

我无法打开以下页面。最后一行问题。我不想要底排。我该怎么办。

HtmlWeb web = new HtmlWeb();
web.OverrideEncoding = Encoding.GetEncoding("windows-1254");
HtmlAgilityPack.HtmlDocument doc = web.Load("http://www.yerelnet.org.tr/ilceler/ilce.php?ilceid=198191");
var ilceNufus =  doc.DocumentNode
.SelectNodes("//*[@id='Table_01']/tr[2]/td[1]/table/tr/td/table[5]/tr/td[2]/table[1]/tr/td[3]/table[2]/tr")
.Skip(1)
.Select(td => td.Elements("td").Select(row => row.InnerText).ToList())
.Select(td => new { Yil = td[0], Toplam = td[1], Sehir = td[2], Koy = td[3] })
.ToList();
dataGridView1.DataSource = ilceNufus;

HtmlAgilityPack ArgumentOutOfRangeException 最后一行

只需添加一个Where

var ilceNufus = doc.DocumentNode.SelectNodes("//*[@id='Table_01']/tr[2]/td[1]/table/tr/td/table[5]/tr/td[2]/table[1]/tr/td[3]/table[2]/tr")
                .Skip(1)
                .Select(td => td.Elements("td").Select(row => row.InnerText).ToList())
                .Where(tds => tds.Count == 4)
                .Select(td => new { Yil = td[0], Toplam = td[1], Sehir = td[2], Koy = td[3] }).ToList();