ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

selenium使用Xpath定位方法

2022-05-28 19:00:46  阅读:148  来源: 互联网

标签:Xpath 定位 name xpath text selenium input type id


一、xpath的定位方法

1.通过绝对路径方式定位  (复制完整xpath就是绝对路径 )

/html/body/div[1]/div[2]/div[5]/div[1]/div/form/span[1]/input

2.通过相对路径方式定位(两个斜杠)

//input

3、通过元素索引定位

//input[2]

4、通过属性定位

使用xpath属性定位(结合第2、第3中方法可以使用)

//input[@id='kw']
//input[@type='name' and @name='kw']

5、通过文本定位

//a[text()='网盘']

//span[text()='按图片搜索']

6、通过部分属性值匹配

//input[starts-with(@id,'k')]
//input[ends-with(@id,'w')] chrome版本问题不行
//input[contains(@id,'w')]

三、关于xpath函数使用举例说明

1、contains():

//input[contains(@class,'ipt')] ,表示选择class中包含有’ipt’的input节点

2、text()

//span[text()='按图片搜索'] ,用text()函数来匹配节点

3、last()

(//input[@type='hidden'])[last()],取xpath最后一个  //input[@type='hidden']  元素

(//input[@type='hidden'])[last()-1] ,取xpath最后第二个  //input[@type='hidden']  元素

4、starts-with()

//input[starts-with(@id,'k')]  表示选择以’k’开头的id属性的input节点

5、not()
not()函数,表示否定

//input[@name=‘identity’ and not(contains(@class,‘a’))] ,表示匹配出name为identity并且class的值中不包含a的input节点。

//input[not(@id) and @name='rsv_spt']  表示匹配出name为rsv_spt并且不包含id的input节点。

 

标签:Xpath,定位,name,xpath,text,selenium,input,type,id
来源: https://www.cnblogs.com/chxlog/p/16321558.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有