Html敏捷包c#:表达式必须计算为一个节点集
本文关键字:点集 节点 一个 计算 表达式 Html | 更新日期: 2023-09-27 18:06:44
我正在使用Html敏捷包来获取网页。我想收集所有的文本,我正在寻找以下形式:
<li><a href="/deal/map/4087664" class="show-location" title="bla bla" data-address="TEXT I AM LOOKING FOR"></a></li>
我试过这个代码:
var web = new HtmlWeb();
var doc = web.Load(url);
var nodes1 = doc.DocumentNode.SelectNodes("//[@data-address]");
var nodes2 = doc.DocumentNode.SelectNodes("//[@data-address={0}]");
都抛出了一个异常:表达式必须求值为节点集。
无论如何我都不是XPath专家,但我猜您需要:
// Note the *
var nodes1 = doc.DocumentNode.SelectNodes("//*[@data-address]");
也就是"任何具有data-address
属性的元素"