【发布时间】:2013-05-18 18:55:39
【问题描述】:
我正在使用 HTMLAGility Pack 解析 HTML 文件,因为我想在 HTML 中访问 DIVS 的属性。
按照我的代码
HtmlAgilityPack.HtmlDocument htmlDoc = new HtmlAgilityPack.HtmlDocument();
htmlDoc.Load("C:\\sampleHtml.html");
var divs = htmlDoc.DocumentNode.SelectNodes("//div");
List<Feature> pageTitles = new List<Feature>();
foreach (var div in divs)
{
pageTitles.Add(new Feature(Convert.ToInt32(div.Id), div.Name.ToString(), false, false));
}
这是我的 HTML
<div id="101" isEnabled="0">My Binders<br />
<img align="" width="170" vspace="0" hspace="0" height="113" border="0" alt="" src="http://www.obout.com/editor_new/images/Nature/field_from_woods.jpg" title="" /><br />
<div id="111" isEnabled="0">Share Binders<br />
<img align="" width="170" vspace="0" hspace="0" height="114" border="0" alt="" src="http://www.obout.com/editor_new/images/Nature/meadow_cows.jpg" title="" /><br />
</div>
<div id="123" isEnabled="0">Add Binders<br />
<img align="" width="48" vspace="0" hspace="0" height="48" border="0" alt="" src="http://www.obout.com/editor_new/images/flags/shadow/flag_american_samoa.png" title="" /><br />
</div></div>
每个 div 都有一个“IsEnabled”属性。但是,我无法使用 HTMLAgile 包访问此属性的值。这是如何实现的。
谢谢
【问题讨论】:
-
您如何尝试访问
isEnabled属性的值? -
var divs = htmlDoc.DocumentNode.SelectNodes("//div");给出了一个 DIV 的列表,其中我得到了所有属性,但不是用户定义的。否则,我试过了, var list = htmlDoc.DocumentNode.SelectNodes("//div@IsEnabled");