我following this tutorial,但我遇到了问题,我不知道怎样按类名获取htmlNode
。
HtmlDocument htmlDoc = new HtmlAgilityPack.HtmlDocument();
htmlDoc.OptionFixNestedTags = true;
htmlDoc.LoadHtml(e.Result);
HtmlNode divContainer = htmlDoc.GetElementbyId("directoryItems");//My problem here,I want to get by class name html
if (divContainer != null)
{
HtmlNodeCollection nodes = divContainer.SelectNodes("//table/tr");
....
}
答案 0 :(得分:2)
试试这个:
HtmlNodeCollection divContainer = htmlDoc.DocumentNode.SelectNodes("//div[@class='myClass']");
这将返回一个div节点的集合,其中 class =“myClass”
答案 1 :(得分:0)
假设您要选择具有类属性值等于&#34; directoryItems&#34;的<div>
元素,并且您知道只有一个元素符合条件(或者您只想选择如果有多个,则首次出现),您可以使用.SelectSingleNode()
方法跟随XPath查询:
HtmlNode divContainer = htmlDoc.DocumentNode
.SelectSingleNode("//div[@class='directoryItems']");