selenium中的xpath定位
一、简介
XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。
二、定位
2.1 利用自己的本身属性定位
//标签[文本属性和值]
下面百度的例子:
//a[text()='个人中心'] #利用文案
//div[@class='s-isindex-wrap' and @class='s-user-set-menu'] #利用class并且用and连接,表示只有两个属性都满足时才确定元素
//div[@class='s-isindex-wrap' or @class='s-user-set-menu'] #利用class并且用and连接,表示只要两个属性满足其中一个时就确定元素
//div[@id='s_user_name_menu'] # id定位
//div[contains(@class,'s-user-set-menu')] #只要class中有s-user-set-menu字符串便定位,contains多用在文案定位中

2.2 利用父节点定位
定位个人中心
//div[@id='s_user_name_menut']/div/a
因为个人中心的父节点就一个div无法定位,所以找到div的上一级
先定位到他的上一级的位置,然后找到个人中心。例如:找到id=s_user_name_menu的位置,他的下一级中又个div然后才是个人中心
div中有好多a标签,如果是第一个a标签就直接写a或者a[0],如果不是第一个a标签写成a[index]。index为索引位置,索引从0开始计算
2.3 依靠子节点定位
利用个人中心定位id=s_user_name_menu的位置
//div[div[a[text()='个人中心']] ]
第一个中括号为定位的位置,中括号里面的中括号为第一个中括号的下一级位置,依次类推
2.4 同级定位
通过个人中心定位账号设置
//a[text()='个人中心']-sibling=a 或者 //a[text()='个人中心']-sibling::a
紧跟着定位的位置下一个a标签
2.5 通配符*定位
//div[@*='s_user_name_menu'] # 查询div标签中任何属性的值只要为s_user_name_menu便成功定位
//*[@id='s_user_name_menu'] # 在任何标签下,只要id='s_user_name_menu'便成功定位
2.6 从根目录开始定位,用“/”开始
/html/body/xxxx/div/xxx
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY