使用HtmlAgilityPack从表单加载p标记

时间:2014-11-05 17:54:06

标签: c# winforms html-agility-pack

我试图抓取p代码中的form代码,但它是null

string html = "<form id='foo123'> <p> loll </p> </form>";
    HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();

    doc.LoadHtml(html);
    var node = doc.DocumentNode.SelectNodes("//form[contains(@id, 'foo')]"); //.Count = 1
    var p = node[0].SelectSingleNode("./p"); // p is null

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

这是一个已知问题,Agility Pack错误地修复了标记的嵌套。您可以致电:

来解决这个问题
HtmlNode.ElementsFlags.Remove("form");

请参阅:http://htmlagilitypack.codeplex.com/workitem/23074