0

html代码:

<div>
    <div>Name</div>
    Date
</div>

如何使用 HtmlAgilityPack 获取NameDate值?

4

3 回答 3

1
HtmlDocument doc = new HtmlDocument();
 doc.Load("file.htm");
 foreach(HtmlNode div in doc.DocumentElement.SelectNodes("//div"])
 {
    string parent = div.InnerText; //this will give you Name
    foreach (HtmlNode child in div.ChildNodes)
    {
     string childDiv = child.InnerText; //this will give you the child
    }
 }
于 2012-07-30T16:10:08.050 回答
0
var doc = new HtmlDocument();
doc.LoadHtml("<div><div>Name</div>Date</div>");
var nodes = doc.DocumentNode
    .DescendantNodes()
    .Where(n => n.NodeType == HtmlNodeType.Text);
foreach (var node in nodes)
{
    var value = node.InnerText;
}
于 2012-07-30T16:15:38.947 回答
0

硬编码:

HtmlDocument doc = new HtmlDocument();
doc.LoadHtml("<div><div>Name</div>Date</div>");
                Console.WriteLine(((HtmlTextNode)doc.DocumentNode.ChildNodes[0].ChildNodes[0]).Text);
Console.WriteLine(((HtmlTextNode)doc.DocumentNode.ChildNodes[1]).Text);

如果您要查找的是所有文本节点(如 Kevin Babcock 的回答!)。您必须记住 Xml(以及 HtmlAgility)中的文本是节点。

于 2012-07-30T16:22:15.780 回答