首页 > DOM+XPath提取规则注记!

DOM+XPath提取规则注记!

下面是使用DOM+Xpath提取html中页面时经常使用的Xpath规则的一些示例:

XPath相关的规则



没有属性 //B[not(@*)]

没有类属性 //B[not(@class)]

要求链接有title属性 //a[@title]

选取最后一个节点 //p[last()]/a

要求有“title”值的class属性和没有class属性的节点集合表示如下:

//ul[@class='ulTxt']/li[@class='title' or not(@class)]/a

//div[@class='yunc mb10' or @class='yuer mb10']

//script[@type='text/javascript' and not(@src)]

没有指定属性值的节点集

//div[@class!='FocusTitle_12px']

获取第一个列表链接://ul[@class='authorbox']/li[1]

如果标签内还包含其它的子标签,现在我们不想要格式信息,只想要其内嵌套的内容,直接用$href->nodeValue,获取对应节点名称使用$href->nodeName

更多相关:

  • 文档树Document Object Model (DOM) 为文档对象模型, 它使用对象的表示方式来表示对应的文档结构及其中的内容。下面为一个样例 p 元素在文档中的对象所包含的所有属性。控制台:p#domaccessKey: ""align: ""assignedSlot: nullattributeStyleMap: Style...

  • 1、封装 什么是封装?   1.对外部隐藏内部的属性,以及实现细节,给外部提供使用的接口     注意:封装有隐藏的意思,但不是单纯的隐藏     学习封装的目的:就是为了能够限制外界对内部数据的访问   python中属性的权限分为两种:   1.公开的     没有任何限制,谁都可以访问   2.私有的     只有当前类本身能狗...

  • jquery:js框架; 主要区别在dom的操作 jq需要引入文件并且引入顺序在最上面; 找元素 操作元素 js:doucument.getElementById..classname,tagname,name jq:$(选择器) dom是js对象 jqDom是jquery对象 操作内容 js:dom.innerHTML(非表单元素)...

  • Mock.js 的语法规范包括两部分: 数据模板定义规范(Data Template Definition,DTD)数据占位符定义规范(Data Placeholder Definition,DPD)1.数据模板定义规范 DTD 数据模板中的每个属性由 3 部分构成:属性名、生成规则、属性值: // 属性名 name // 生...

  • vue   vue.js 是用于构建交互式的 Web 界面的库。它提供了 MVVM 数据绑定和一个可组合的组件系统,具有简单、灵活的 API。从技术上讲, Vue.js 集中在 MVVM 模式上的视图模型层,并通过双向数据绑定连接视图和模型。实际的 DOM 操作和输出格式被抽象出来成指令和过滤器。相比其它的 MVVM 框架,Vue.j...