我刚刚开始使用HtmlAgilityPack而且我遇到了一个问题。 我的代码是:
var urls = html.DocumentNode.SelectNodes("//a[contains(@href, 'watch?v=')");
目前我收到了一系列锚标签。问题是我想要返回一个字符串数组(每个字符串都包含锚标记的href值)。 我该怎么做?
顺便说一下,我知道我之后可以遍历它们并得到hrefs但是我想通过Xpath在一行中完成这个。
答案 0 :(得分:1)
var urls = html.DocumentNode.SelectNodes("//a[contains(@href, 'watch?v=')")
.Select(a => a.Attributes["href"].Value)
.ToList();
答案 1 :(得分:0)
您正在寻找的表达式是
//a[contains(@href, 'watch?v=')]/@href
选择符合条件的a
个链接的“href”属性
编辑:显然HtmlAgility Pack不支持:Selecting attribute values with html Agility Pack