我正在尝试使用HAP访问带前缀的标签,但以下内容不起作用(它们什么都不返回):
HtmlAgilityPack.HtmlNodeCollection nodes = document.DocumentNode.SelectNodes("//*[name() ='sc:xslfile']");
HtmlAgilityPack.HtmlNodeCollection nodes = document.DocumentNode.SelectNodes("//*['sc:xslfile']");
有什么想法吗?
编辑:
HTML看起来像这样:
<p>Men's Standings<br />
<sc:xslfile runat="server" datasource="/Global/Tables/1_01/9859_" id="WC_9859"></sc:xslfile>
<br /><br /><br />
Women's Standings
<br /><sc:xslfile runat="server" datasource="/Global/Tables/1_01/9860_" id="WC_9860"></sc:xslfile></p>
@Pat,我试过开始但仍然没有去。
也许是因为标签是空的?
答案 0 :(得分:2)
您可以使用启动选择器。
即:
var nodes = document.DocumentNode.SelectNodes("//*[starts-with(@class, 'cnn_')]");
其中@class是您要查找的属性。
击>
更新
如果您只对数据源和/或ID感兴趣,可以运行:
//*[@datasource]
或
//*[contains(@id, 'WC_']
但是,了解您要提取的内容有助于优化选择器。