//选择不包含class属性的节点
var result = node.SelectNodes(".//span[not(@class)]");
//选择不包含class和id属性的节点
var result = node.SelectNodes(".//span[not(@class) and not(@id)]");
//选择不包含class="expire"的span
var result = node.SelectNodes(".//span[not(contains(@class,'expire'))]");
//选择包含class="expire"的span
var result = node.SelectNodes(".//span[contains(@class,'expire')]");

另一种解析方式,假如我们需要根据div的class属性是否包含post值来提取div中的InnerText:

<div id="post-405" class="post-405 post type-post status">inner text</div>
<div id="post-105" class="post-105 post type-post status">inner text</div>
<div id="post-5" class="post-5 post type-post status">inner text</div>

 

可以用以下方法来提取符合条件的所有HtmlNode节点

var results = doc.DocumentNode
                 .Descendants("div")
                 .Where(x=>x.Attributes.Contains("class") &&
                           x.Attributes["class"].Value.Contains("post"));

 

提取得到节点数据之后,根据实际处理即可。

相关文章:

  • 2022-12-23
  • 2021-07-20
  • 2022-02-06
  • 2022-12-23
  • 2022-12-23
  • 2022-02-10
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-01-07
  • 2021-07-08
  • 2021-08-13
  • 2022-01-02
  • 2022-12-23
相关资源
相似解决方案