我有这个结构
<span class="glyphicon glyphicon-user"></span>
123 <br>
我想得到“123”
此代码如果存在则在标签之间获取
var username = document.DocumentNode.SelectSingleNode("//p[@class='glyphicon-user']");
//Response.Write(username.InnerText);
但我想得到“123”
最佳答案
这是一种可能的方式,完全基于目前发布的 HTML sinppet:
var query = "//span[@class='glyphicon glyphicon-user']/following-sibling::text()[1]";
var username = document.DocumentNode.SelectSingleNode(query);
Console.WriteLine(username.InnerText.Trim());
基本上,XPath 会查找具有特定 class
属性值的 span
,然后返回位于 span 之后的最近的文本节点
。根据您的具体需要和实际的 HTML 结构,可能有更好的方法。
输出:
123
关于c# - 使用 Html Agility Pack 的类在跨度后获取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39804878/