如何在C#中使用Linq使用htmlagilitypack解析网页?

如何在C#中使用Linq使用htmlagilitypack解析网页?,c#,linq,visual-studio,parsing,screen-scraping,C#,Linq,Visual Studio,Parsing,Screen Scraping,我试图在网上找到一个教程,解释如何解析网页(维基百科我正在研究),使用Linq。。。类似这样的东西使用系统。Linq: var reviewBodyChildNodes = newsNode.ChildNodes .Single(x => x.Id == "review-body") .ChildNodes; 或 但我发现的只是使用xml数据作为示例

我试图在网上找到一个教程,解释如何解析网页(维基百科我正在研究),使用Linq。。。类似这样的东西使用系统。Linq:

var reviewBodyChildNodes = newsNode.ChildNodes
                                   .Single(x => x.Id == "review-body")
                                   .ChildNodes;

但我发现的只是使用xml数据作为示例的XmlDocument和XmlElement。。。它和上面的东西有什么不同?我错过了什么?我想在这一页上做一些解释:


请提供帮助。

网页刮板是特定于您从中获取数据的网页的。我认为对于能够使用htmlagilitypack的人来说,你必须很好地了解Linq和正则表达式。我可以建议一些资源来帮助你。为了学习Linq,我喜欢LinqPad,它是一个免费工具,有大量的C#Linq、linqtoxml、正则表达式示例


链接:

格式良好的html应该与linq to xml查询的xml非常相似,但是某些Xpath根本不起作用。。。调试在计算DOM元素的语句处中断。我试过firebug,chrome工具。。。Xpath是正确的。。。我根本不知道如何进行。
newMovie.Title = div.Descendants()
                    .Where(i => 
                           i.Name == "h4" &&
                           i.GetAttributeValue("itemprop", "") == "name"
                    )
                    .FirstOrDefault()
                    .InnerText
                    .Trim();