xpath路径的写法

关于xpath路径的写法

1.选取节点

表达式 描述
nodename 选取此节点的所有子节点。
/ 从根节点选取。
// 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。
. 选取当前节点。
.. 选取当前节点的父节点。
@ 选取属性。
路径表达式 结果
bookstore 选取 bookstore 元素的所有子节点。
/bookstore 选取根元素 bookstore。注释:假如路径起始于正斜杠( / ),则此路径始终代表到某元素的绝对路径!
bookstore/book 选取属于 bookstore 的子元素的所有 book 元素。
//book 选取所有 book 子元素,而不管它们在文档中的位置。
bookstore//book 选择属于 bookstore 元素的后代的所有 book 元素,而不管它们位于 bookstore 之下的什么位置。
//@lang 选取名为 lang 的所有属性

举例

1.查找页面根元素://

2.查找页面上所有的input元素://input

3.查找页面上第一个form元素内的直接子input元素(即只包括form元素的下一级input元素,使用绝对路径表示, 单/号)://form[1]/input

4.查找页面上第一个form元素内的所有子input元素(只要在form元素内的input都算,不管还嵌套了多少个其他标 签,使用相对路径表示,双//号)://form[1]//input

5.查找页面上第一个form元素://form[1]

6.查找页面上id为loginForm的form元素://form[@id=‘loginForm‘]

7.查找页面上具有name属性为username的input元素://input[@name=‘username‘]

8.查找页面上id为loginForm的form元素下的第一个input元素://form[@id=‘loginForm‘]/input[1]

9.查找页面具有name属性为contiune并且type属性为button的input元素://input[@name=‘continue‘][@type=‘button‘]

10.查找网页中所有属性为id的元素 ://@id

2.对于节点查找的内容进行修饰

举例

路径表达式 结果
/bookstore/book[1] 选取属于 bookstore 子元素的第一个 book 元素。
/bookstore/book[last()] 选取属于 bookstore 子元素的最后一个 book 元素。
/bookstore/book[last()-1] 选取属于 bookstore 子元素的倒数第二个 book 元素。
/bookstore/book[position()<3] 选取最前面的两个属于 bookstore 元素的子元素的 book 元素。
//title[@lang] 选取所有拥有名为 lang 的属性的 title 元素。
//title[@lang=‘eng‘] 选取所有 title 元素,且这些元素拥有值为 eng 的 lang 属性。
/bookstore/book[price>35.00] 选取 bookstore 元素的所有 book 元素,且其中的 price 元素的值须大于 35.00。
/bookstore/book[price>35.00]/title 选取 bookstore 元素中的 book 元素的所有 title 元素,且其中的 price 元素的值须大于 35.00。

3.选取未知节点

通配符 描述
* 匹配任何元素节点。
@* 匹配任何属性节点。
node() 匹配任何类型的节点。

举例

路径表达式 结果
/bookstore/* 选取 bookstore 元素的所有子元素。
//* 选取文档中的所有元素。
//title[@*] 选取所有带有属性的 title 元素。

4.选取若干路径

通过在路径表达式中使用“|”运算符,您可以选取若干个路径。

路径表达式 结果
//book/title | //book/price 选取 book 元素的所有 title 和 price 元素。
//title | //price 选取文档中的所有 title 和 price 元素。
/bookstore/book/title | //price 选取属于 bookstore 元素的 book 元素的所有 title 元素,以及文档中所有的 price 元素。

原文地址:https://www.cnblogs.com/pythonywy/p/11082153.html

时间: 2024-10-27 20:49:33

xpath路径的写法的相关文章

jsp中超链接路径的写法

主题 超链接不就是一个地址字符串吗?这能有什么花头? LZSB! 曾经我也是这么想的.... 最近对apache的学习让我对网页中超链接,CSS,js的路径的写法有了一些新的认识. 所以这篇文章主要分享一下我的一些想法与发现.. 相对路径 最早以前我用的就是相对路径,刚开始感觉用起来很爽...很简单...比如当前路径是localhost:8080/projectName/a.jsp 我想超链接到localhost:8080/projectName/b.jsp 我只需要写<a href="b

C#文件路径的写法

在C#中 “\”是特殊字符,要表示它的话需要使用“\\”.由于这种写法不方便,C#语言提供了@对其简化.只要在字符串前加上@即可直接使用“\”.所以上面的路径在C#中应该表示为“Book”,@“\Tmp\Book”,@“C:\Tmp\Book”. 1.绝对路径 绝对路径是指文件在硬盘上真正存在的路径.例如“bg.jpg”这个图片是存放在硬盘的“E:\book\网页布局代码\第2章”目录下,那么 “bg.jpg”这个图片的绝对路径就是“E:\book\网页布\代码\第2章\bg.jpg".那么如果

总结相对路径和绝对路径的写法

在C#中 "\"是特殊字符,要表示它的话需要使用"\\".由于这种写法不方便,C#语言提供了@对其简化.只要在字符串前加上@即可直接使用"\".所以上面的路径在C#中应该表示为"Book",@"\Tmp\Book",@"C:\Tmp\Book". 相对路径使用"/"字符作为目录的分隔字符,而绝对路径可以使用"\"或"/"字符作为

在xpath路径中添加变量参数

需求:需要从文件中读取参数,然后添加到xpath中,根据传入的参数执行相应的操作点击,如下: 1.先试着使用固定的路径运行一下,代码如下: 这里的 xpath = '//*[@class="ant-select-dropdown-menu-item"][1]' , [1]代表点击的是这个class下的第1号元素,即“母婴用品” 可以执行成功,说明方法可行 2.下一步就是要把固定的参数[1]换成非固定参数,直接把[1]换一个值就可以了,list_li是从文件里读取的当前传入的数字,代码如

jsp页面的调用静态资源(如img,css,js)等资源时路径的写法

在使用SpringMVC跳转的页面加载资源时,如:8080/chaos/xx/aa.do 时跳转到某个页面,如果你在该页面使用去调用资源时,会发现,该页面的查找路径是去当前action的往前的一个映射,img回去/chaos/xx/ 这个路径去找文件image/xx.jpg.这显然找不到资源,如果你写成时,他会去:8080/image/xx.jpg里找.... 这是如果写死的话,会发现一时成功,但不方便以后变更,或者项目改名. 解决办法是:<img src="${pageContext.r

路径的写法

虚拟路径:使用绝对路径,若针对服务器使用,省略WEB名称,若针对浏览器使用则写上WEB应用名称 真实路径:使用相对路径,根据原理具体分析 File file = new File();--相对于程序的启动目录,对于java程序相当于是程序的根目录,对于web应用,由于是tomcat启动的,所以在tomcat/bin目录下 ServletContext.getRealPath()--在给出的路径前拼接当前web应用的路径从而拼接出资源的硬盘路径 ClassLoader.getResource().

获取html元素的XPath路径

1 <!DOCTYPE html> 2 <html> 3 <head> 4 <script src="/jquery/jquery-1.11.1.min.js"> 5 </script> 6 <script> 7 8 function readXPath(element) { 9 if (element.id! == ""){//判断id属性,如果这个元素有id,则显 示//*[@id=&quo

VS工程的相对路径写法

最近搭建一个VS工程的框架,为了让所有人都能直接使用,要使用相对路径,下面的几种常见路径的写法: 1.两个点“..\”表示在工程文件(*.vcxproj)的上一级目录. 2.一个点“.\”则表示和工程文件(*.vcxproj)在同一级目录. 3.多级目录就是..\..\ 原文地址:https://www.cnblogs.com/132818Creator/p/11014639.html

java selenium (六) XPath 定位

什么是xpath xpath 是XML Path的简称, 由于HTML文档本身就是一个标准的XML页面,所以我们可以使用Xpath 的用法来定位页面元素. xpath定位的缺点 xpath 这种定位方式, webdriver会将整个页面的所有元素进行扫描以定位我们所需要的元素, 这是个非常费时的操作,  如果脚本中大量使用xpath做元素定位的话, 脚本的执行速度可能会稍慢 testXpath.html 代码如下 <html> <head><title>Test Xpa