或、无属性、属性个数、属性值:

var preceding_siblings = node.SelectNodes("preceding-sibling::input| preceding-sibling::button[count(@role)>0] | preceding-sibling::div[not(@*)]");

var ancestors = node.SelectNodes("ancestor::div | ancestor:div[@level='primary'] | ancestor::div/ul");

以全小写查找:

var content_venue_nodes = this.GetNodes("//div//text()[contains(translate(.,'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz'),'hello world')]");

......

轴名称

结果

ancestor

选取当前节点的所有先辈(父、祖父等)

ancestor-or-self

选取当前节点的所有先辈(父、祖父等)以及当前节点本身

attribute

选取当前节点的所有属性

child

选取当前节点的所有子元素。

descendant

选取当前节点的所有后代元素(子、孙等)。

descendant-or-self

选取当前节点的所有后代元素(子、孙等)以及当前节点本身。

following

选取文档中当前节点的结束标签之后的所有节点。

namespace

选取当前节点的所有命名空间节点

parent

选取当前节点的父节点。

preceding

直到所有这个节点的父辈节点,顺序选择每个父辈节点前的所有同级节点

preceding-sibling

选取当前节点之前的所有同级节点。

self

选取当前节点。

转载于:https://www.cnblogs.com/yipeng-yu/p/7278299.html

HtmlAgilityPack 使用相关推荐

  1. HtmlAgilityPack 处理通配的contains

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

  2. [翻译]使用HtmlAgilityPack更好的HTML分析和验证

    让我们面对它,有时候,当您正在编写自定义的提取和验证规则时Microsoft.VisualStudio.TestTools.WebTesting.HtmlDocument 类不会剪切它.HtmlDoc ...

  3. HtmlAgilityPack 总结(一)

    一个解析html的C#类库HtmlAgilityPack, HtmlAgilityPack是一个基于.Net的.第三方免费开源的微型类库,主要用于在服务器端解析html文档(在B/S结构的程序中客户端 ...

  4. 2012-09-10 23:30 如何解决HtmlAgilityPack得到的InnerText中有残留的script、样式的问题...

    那么如何解决HtmlAgilityPack得到的InnerText中有残留的script.样式的问题呢,在google上搜索"HtmlAgilityPack script innerText ...

  5. 向HtmlAgilityPack道歉:解析HTML还是你好用

    原文:http://www.cnblogs.com/rupeng/archive/2012/02/07/2342012.html 去年写过一篇文章<解析HTML最好的类还是微软自己的>,回 ...

  6. C#网页数据采集(一)HtmlAgilityPack

    HtmlAgilityPack是.NET下的一个HTML解析类库.支持用XPath来解析HTML.命名空间:HtmlAgilityPack HtmlWeb webClient = new HtmlWe ...

  7. HtmlAgilityPack 抓取页面的乱码处理

    HtmlAgilityPack 抓取页面的乱码处理 用来解析 HTML 确实方便.不过直接读取网页时会出现乱码. 实际上,它是能正确读到有关字符集的信息,怎么会在输出时,没有取到正确内容. 因此,读两 ...

  8. HtmlAgilityPack 之 HtmlNode类

    HtmlAgilityPack中的HtmlNode类与XmlNode类差不多,提供的功能也大同小异.下面来看看该类提供功能. 一.静态属性 public static Dictionary<st ...

  9. HTML解析利器HtmlAgilityPack

    在以前的项目中周公曾有解析HTML的情况,当时是采用正则表达式一步步将无关的HTML注释及JS代码部分删除掉,然后再用正则表达式找出需要提取的部分,可以说使用正则表达式来做是一个比较繁琐的过程,特别是 ...

  10. .Net解析html文档类库HtmlAgilityPack完整使用说明

    在前几篇文章中([搜房网房产数据采集程序demo--GeckoWebBrowser实例] )都有提到一个解析html的C#类库HtmlAgilityPack, 今天终于有时间整理一下,并把Demo分享 ...

最新文章

  1. 终端输入参数:argparse和sys.argv[]的用法
  2. 数据泄露 安全狗捍卫服务器安全
  3. windows8.1 windows defender service无法启动解决方案
  4. C++ SYN攻击源码
  5. 作者:吴城文,男,清华大学计算机科学与技术系硕士生。
  6. 汉诺塔 hanoi 如此简单
  7. gdb调试mpi程序
  8. jsonpath学习链接
  9. 安卓按键:紫猫老师的正则教程
  10. CVPR2019| 中科院VIPL实验室11篇CVPR解读:弱监督学习、视频分割、目标检测
  11. 始料未及-- 元宇宙传来好消息,全球轰动
  12. 2019年3月菜鸟实习生电话面试题
  13. 个人总结-网络安全学习和CTF必不可少的一些网站
  14. 我的第一篇SPL(Signal Processing Letters)的写作旅途
  15. macOS Big Sur发布了!适用于所有兼容的Mac机型!
  16. ie浏览器调用本地文件无反应_win7 ie浏览器打不开本地htm文件
  17. [蓝桥杯]连号区间数[题目详解]
  18. 华三H3C设备 公司网络外网变慢分析
  19. Amazon后台模拟登陆
  20. redis集群模式是怎么实现的?

热门文章

  1. MongoDB最简单的入门教程之二 使用nodejs访问MongoDB
  2. 微信小程序开发系列六:微信框架API的调用
  3. exxi6.7如何传文件到win7_比QQ直传快100倍!它让PC、安卓、iPhone光速互传文件
  4. springboot使用imageio返回图片_SpringBoot 二维码生成(复制即用)
  5. centos6安装mysql并远程连接_如何开启phpstudy中mysql的远程连接
  6. python学习-高阶函数(函数传参、返回函数(闭包)、匿名函数lambda)
  7. 计算机为什么启动二次才能打开,为什么电脑要2次重启才能启动显示器那
  8. 查看与其他计算机是否连接网络,电脑的网络连接情况要如何的查看和管理
  9. oracle 酒店客户数量,浅谈经济型酒店行业的数据分析(二)
  10. ad元件定位孔放在哪一层_打造个人IP系列(4)——确立定位 搭建人设(上)