我有一个基本的HTML页面。它包括奥莫地区。同类8不同的内容。
<div class="omo-page-wrapper">
<div class="omo-part">
<div class="omo-img">...</div>
<div class="omo-info">
<div class="r-logo">...</div>
<div class="r-content font-hbold">
<i>Content Area 1</i>
<em>Content Area 2</em>
<a href="/blabla">Href</a>
</div>
</div>
</div>
<div class="omo-part">
<div class="omo-img">...</div>
<div class="omo-info">
<div class="r-logo">...</div>
<div class="r-content font-hbold">
<i>Content Area 1</i>
<em>Content Area 2</em>
<a href="/blabla2">Href2</a>
</div>
</div>
</div>
<div class="omo-part">...</div>
<div class="omo-part">...</div>
<div class="omo-part">...</div>
<div class="omo-part">...</div>
<div class="omo-part">...</div>
<div class="omo-part">...</div>
</div>我想得到所有r-内容字体的所有内容(i,em,href)。我被利用了,我得到了所有节点。但我没有得到ChildNodes..。
HtmlDocument document = new HtmlDocument();
document.LoadHtml(html);
var allElementsWithClassTalkMedallion = document.DocumentNode.SelectNodes("//*[contains(@class,'r-content font-hbold')]");
foreach (HtmlNode node in allElementsWithClassTalkMedallion)
{
dataTable.Rows.Add("i", "em", "href"); //??
}
return promotions;8(或更多)相同的类区域,3个子节点。我怎么能得到所有的我,嗯,href的内容?非常感谢。
发布于 2014-11-04 10:27:38
一种可能的方法是,您可以使用SelectSingleNode()从每个node变量一次获得一个特定的节点:
foreach (HtmlNode node in allElementsWithClassTalkMedallion)
{
var i = node.SelectSingleNode("i").InnerText.Trim();
var em = node.SelectSingleNode("em").InnerText.Trim();
var href = node.SelectSingleNode("href").InnerText.Trim();
dataTable.Rows.Add(i, em, href);
}https://stackoverflow.com/questions/26732588
复制相似问题