XPath位置的定义
位置是XPath语言中最预定义的方法,用于在给定节点类型的正确位置设置或跟踪元素节点。它被用来执行代表上下文的顺序位置的整数。这里的位置从1开始,它被设置为给定节点集的第一个节点,并不断增加,直到达到最后一个函数的值。在这篇文章中,简要讨论了XPath位置的定义、用法和例子。
什么是XPath的位置?
如果在父标签下有n个子标签,用于将子标签与其他子标签放在适当的位置上,为了实现这一点,XPath中使用position()函数。它被用于执行固定上下文节点集的整数的函数中。该位置启动了第一个上下文的节点集,并增加到具有最后一个函数的值。
如何使用XPath的position函数?
下面讨论一个XML文档的根元素和一个简单的XPath位置和语法。
作为根元素的超市有五个元素结点,它们被应用于整个子代::轴。
(超市:柜台,超市:孩子,超市:杂货,超市:蔬菜,超市:衣服)
在位置路径中,定义如下。
/supermarket : supermarket / descendant ::*
这个函数设置节点集的值,该节点集由五个元素节点组成,通过添加谓词来帮助定位,如以下语法。
/supermarket : supermarket / descendant ::* [position () = 3]
它有助于选择本地节点集中的第三个节点。
现在,该值在position()函数的帮助下被传递,该函数在轴的反向和正向方向都适用。在轴上,要像前面的例子那样向前行进类型,descendant::节点是按照给定的顺序从文件中选择。如果用户试图反向访问轴,他应该提供适当的负值来从节点中获取元素。因此,为了构建一个位置路径,语法应该从衣服节点开始,然后定位到前面的超市:计数器节点。
这里的位置路径的框架如下。
// clothes/ prior::* [position ( ) = 3]
如果要按相反的顺序工作,语法应该表示为prior #1,它从超市:衣服中获取结果,对于prior或祖先#2,它从超市:蔬菜中获取数据。
position()函数是比较强制性的,有两个有效的原因,一个是它可以在任何步骤中从位置中提到,并且可以很容易地取到值,而且它不是强制性地与整个XML文档一起旅行。
// clothes/ prior::* [position ( ) = 3]
或 // clothes/ prior::* [3]
另一个原因是在许多XSLT函数中,它是针对存在于几类节点中的所有第n个值进行的,然后对源树进行转换。
如果用户想选择文档中表格的每一条偶数行,那么所有的奇数行都应该被删除。换句话说,所有交替的行都可以被选择。使用XPath中的函数position()可以很容易地实现,它与数字运算符mod配合得很好。
XPath定位Selenium定位器
下面的步骤是在selenium中用来定位XPath函数中的position()的。
selenium的基本链接应在默认的chrome浏览器中打开,其中的应用程序chropath应事先安装。该应用程序的链接在标准的selenium网站上可以找到。
在chrome浏览器中,选择chropath,然后选择Rel XPath。
然后,应使用chropath选项中的//p来选择XPath的相对表达式,并从选定的位置观察给定的细节。
用户可以通过在XPath中可用的相对表达式中使用XPath的函数中的position()来定位细节。它可以被定义为相对XPath表达式::// p [position ( ) = 3]
然后根据语法,执行chropath中的相对表达。
然后,为了定位下一个选项,使用同样的语法,但位置值应该被改变。
相对的XPath表达式 ::// p [position ( ) = 2]
在chropath中输入相对的XPath表达式,所有给出的选项都应该被执行。
如果已经安装了应用程序chropath并且更新了chrome浏览器,那么就可以在提示中启动这个过程。最初的输入标签是通过应用相对的XPath表达式来使用的
(//输入) [位置=1]。
如果输入标签的数量是用相对XPath表达式的位置()。
那么它应该以相对XPath表达式的形式给出:( // input ) [position = n] 。
执行上述语法,并在n的位置上给出正确的标签,以获取所需数据。
在XPath中,当需要比较和获取两个元素之间的值时,会使用带有大于或小于符号的相对表达。语法如下。
// p [ position () > O ] 。这里在HTML中选择了所有的p标签,并观察到合适的值被取走了。
如果用户想追踪本地节点集中的所有元素,这些元素被放置在大于0和小于2之间,可以通过定义带有position()的函数来执行,并且可以与position()>2进行比较。 获取0和2之间数值的语法是
// p [ position ( ) > 0 and position ( ) < 2 ] 。
总结
因此,我们讨论了Selenium定位器和XPath在文档中的位置的用法,用户可以从高维度的文档中轻松获取数据。
推荐文章
这是一个关于XPath定位的指南。这里我们讨论了定义,什么是XPath的位置,如何使用XPath位置函数,以及分别用代码实现的例子。
The postXPath Positionappeared first onEDUCBA.