0

我对使用 LINQ 有点陌生。我想做的是从一个带有日语词汇的网站上提取数据。表格内有 3 个单元格。有时有些单元格是空白的,因为那里不需要词汇表。我使用 HTMLAgilityPack 从网站中提取数据。但是,当我尝试解析它时,它会显示一个错误,指出它不能有空值。

 HtmlAgilityPack.HtmlDocument doc = hw.Load(@"http://www.tanos.co.uk/jlpt/jlpt1/vocab/combined/");
        var query = from table in doc.DocumentNode.SelectNodes("//table").Cast<HtmlNode>()
                    from row in table.SelectNodes("tr").Cast<HtmlNode>()
                    from cell in table.SelectNodes("th|td").Cast<HtmlNode() //where cell != null
                    select new { Table = table.Id, cellText = cell.InnerText };

我不确定如何转换它,所以我将能够解析我现在拥有的信息。最终我想使用 foreach 将这些单元格放入一个 excel 文件中。

4

1 回答 1

0
 var query = from table in doc.DocumentNode.SelectNodes("//table").Cast<HtmlNode>()
                    from row in table.SelectNodes("tr").Cast<HtmlNode>()
                    from cell in table.SelectNodes("th|td").Cast<HtmlNode() //where cell != null
                    select new { Table = table.Id, cellText =cell==null?"":cell.InnerText??"" };

你试过这个吗?

于 2013-08-28T02:47:01.530 回答