XPath轴
XPath 轴
翻译:Linyupark / 2006-03-24
The XML Example Document
XML举例文档
We will use the following XML document in the examples below.
我么将使用该XML文档进行下面的举例说明
<?xml version="1.0" encoding="ISO-8859-1"?>
<bookstore>
<book>
<title lang="eng">Harry Potter</title>
<price>29.99</price>
</book>
<book>
<title lang="eng">Learning XML</title>
<price>39.95</price>
</book>
</bookstore>
XPath Axes
XPath轴
An axis defines a node-set relative to the current node.
轴定义了相对于当前节的节集
| 轴名 | 结果 |
| ancestor | Selects all ancestors (parent, grandparent, etc.) of the current node[选择了当前节的所有祖(父,祖父,等等)] |
| ancestor-or-self | Selects all ancestors (parent, grandparent, etc.) of the current node and the current node itself[选择当前节的所有祖并且还有当前节自己] |
| attribute | Selects all attributes of the current node[选择所有当前节的属性] |
| child | Selects all children of the current node[选择所有当前节的子] |
| descendant | Selects all descendants (children, grandchildren, etc.) of the current node[选择所有当前节的孙(子,孙子,等等)] |
| descendant-or-self | Selects all descendants (children, grandchildren, etc.) of the current node and the current node itself[选择当前节的所有孙以及它本身] |
| following | Selects everything in the document after the closing tag of the current node[选择所有在关闭当前节标签后的所有内容] |
| following-sibling | Selects all siblings after the current node[选择所有当前节后的兄] |
| namespace | Selects all namespace nodes of the current node[选择所有当前节的命名空间] |
| parent | Selects the parent of the current node[选择当前节的父] |
| preceding | Selects everything in the document that is before the start tag of the current node[选择当前节之前的所有内容] |
| preceding-sibling | Selects all siblings before the current node[选择所有当前节之前的兄] |
| self | Selects the current node[选择当前节] |
Location Path Expression
路径表达试定位
A location path can be absolute or relative.
定位路径可以是绝对的也可以是相对的
An absolute location path starts with a slash ( / ) and a relative
location path does not. In both cases the location path consists of one
or more steps, each separated by a slash:
绝对定位的路径由(/)开始,而相对定位就不这样。定位的路径由一个或多个步骤所组成,每部分由(/)相分隔:
An absolute location path:
/step/step/...
A relative location path:
step/step/...
Each step is evaluated against the nodes in the current node-set.
在当前的节集中每步的赋值是逆向的
A step consists of:
- an axis (defines the tree-relationship between the selected nodes and the current node)
- a node-test (identifies a node within an axis)[在轴中鉴定节]
- zero or more predicates (to further refine the selected node-set)[0个或多个谓语可以来更好的选择节]
The syntax for a location step is:
定位的语法
axisname::nodetest[predicate]
Examples
实例
| Example | 结果 |
| child::book | Selects all book nodes that are children of the current node[选择当前节点下所有为book的子节点] |
| attribute::lang | Selects the lang attribute of the current node[选择当前节点下所有属性为lang的内容] |
| child::* | Selects all children of the current node[选择当前节下所有的子节] |
| attribute::* | Selects all attributes of the current node[选择当前节所有的属性] |
| child::text() | Selects all text child nodes of the current node[选择当前节点所有子节点的文字] |
| child::node() | Selects all child nodes of the current node[选择所有当前节点的子节点] |
| descendant::book | Selects all book descendants of the current node[选择当前节点所有为book的孙节点] |
| ancestor::book | Selects all book ancestors of the current node[选择所有当前祖节点为book的节点] |
| ancestor-or-self::book | Selects all book ancestors of the current node - and the current as well if it is a book node[当前节点和其祖节点为book的节点] |
| child::*/child::price | Selects all price grandchildren of the current node[当前节点所有含price的孙子节点] |
XPath轴的更多相关文章
- xpath轴的正确使用姿势
网上看了许多关于轴的介绍,只介绍了语法,而没有明说具体实际中该怎么使用,百思不得其解. 背景--python中使用xpath: ----------------------------------- ...
- XPath 轴
XML 实例文档 我们将在下面的例子中使用此 XML 文档: <?xml version="1.0" encoding="ISO-8859-1"?> ...
- python+selenium基础之XPATH轴定位(第二篇)
第一篇讲了xpath定位的一些基本定位方法,这里再介绍一种:xpath轴定位,应用场景是当某个元素的各个属性及其组合都不足以定位时,那么可以利用其兄弟节点或者父节点等各种可以定位的元素进行定位. 1. ...
- XPath轴(XPath Axes)总结
XPath轴(XPath Axes)可定义某个相对于当前节点的节点集: 1.child 选取当前节点的所有子元素 2.parent 选取当前节点的父节点 3.descendant 选取当前节点的所有后 ...
- selenium中Xpath轴定位方法
1.Xpath轴:轴可定义相对于当前节点的节点集. 使用语法:轴名称::节点名称 例://input[@data-value="SXRYNAME"]/parent::td/foll ...
- 深入浅出xpath轴定位
在web自动化里面经常要用到定位,常用的八种定位方式中我最喜欢xpath定位,功能很强大.结合它里面的文本定位.模糊定位.逻辑定位等,基本能搞定所有的元素定位问题. 今天要讨论的是xpath的另一种比 ...
- 了解XPath与XPath轴
XPath 是一门在 XML 文档中查找信息的语言.XPath 用于在 XML 文档中通过元素和属性进行导航. 节点(Node) 在 XPath 中,有七种类型的节点:元素.属性.文本.命名空间.处理 ...
- web-UI自动化必会技能—xpath轴,了解一下?
本来以为不会再更新UI自动化相关的东西了,不过最近群里的朋友在搞UI,提出了许多问题,我看了下,大多还是页面元素定位类的问题,那今天就再讲点. 一.先了解xpath 说到元素定位,大家应该都知道常见的 ...
- 『心善渊』Selenium3.0基础 — 7、XPath轴定位详解
目录 1.XPath轴定位介绍 2.位置路径表达式概念 3.步的路径表达式范例 4.练习 使用XPath轴方式,可根据文档中元素的相对位置,来进行元素的定位.例如:先找到一个相对好定位的元素,在根据与 ...
随机推荐
- thinkphp5.0 输入变量
可以通过Request对象完成全局输入变量的检测.获取和安全过滤,支持包括$_GET.$_POST.$_REQUEST.$_SERVER.$_SESSION.$_COOKIE.$_ENV等系统变量,以 ...
- 【技术分享会】 @第五期 angularjs
前言 AngularJS 最初由Misko Hevery 和Adam Abrons于2009年开发,后来成为了Google公司的项目.AngularJS弥补了HTML在构建应用方面的不足,其通过使用标 ...
- [OpenGL]用OpenGL制作动画
//在窗口内绘制一个移动的矩形 /*我们通常还可以用OpenGL程序创建动画效果,这里我们利用前面的例子,绘制正方形,并使这个正方形在窗口的边框反弹.这里需要创建一个循环,在每次调用显示回调函数之前改 ...
- 【转】strlen源码
strlen源码剖析 学习高效编程的有效途径之一就是阅读高手写的源代码,CRT(C/C++ Runtime Library)作为底层的函数库,实现必然高效.恰好手中就有glibc和VC的CRT源代码, ...
- 【Java基础】StringTokenizer用法
写在前面 因为最近在接触hadoop的东西,看示例WordCount的时候里面有一个StringTokenizer的东西特地看了一下 The string tokenizer class allows ...
- 【分享】IT产业中的三大定理(三) —— 反摩尔定理 (Reverse Moore's Law)
Google(谷歌)的 CEO 埃里克·施密特在一次采访中指出,如果你反过来看摩尔定理,一个 IT 公司如果今天和十八个月前卖掉同样多的.同样的产品,它的营业额就要降一半.IT 界把它称为反摩尔定理. ...
- 通过orderby关键字,LINQ可以实现升序和降序排序。LINQ还支持次要排序。
通过orderby关键字,LINQ可以实现升序和降序排序.LINQ还支持次要排序. LINQ默认的排序是升序排序,如果你想使用降序排序,就要使用descending关键字. static void M ...
- GoldenGate的监控
1.进入GoldenGate安装目录,运行GGSCI,然后使用info all查看整体的运行状况 GGSCI (aix212) 1> info all Program Status Group ...
- JVM工具jinfo实践
一.jinfo命令格式 命令格式: jinfo [option] <pid> Usage: jinfo [option] <pid> (to connect to runnin ...
- Artech的MVC4框架学习——第六章Model的验证
第一Model验证旨在为通过Model绑定生成参数进行检验以确保用户输入数据的有效性(p318) 第二Model验证分两种:服务器端(三种解决方案 p256)和客户端(ajax\jQuery) 第三服 ...