selenium-XPATH定位

2023-11-09

XPATH定位:

相对路径
    相对定位是两个杠表示“//”,相对路径易维护
    例: "//div[1]//div[2]

绝对路径
    绝对定位用一个杠“/”, 绝对路径一个层级变化所有空间都有变化
    例: /html/body/div[1]/section/section/main/div[2]/div[2]/div[1]/div[2]/button[1]/span

last()方法
    当标签存在多个相同的时候,可以使用xpath中的last()方法,定位到最后一个
    例: //span/ul//li[last()]

属性查找@
    使用元素属性定位,//标签名[@元素名称='元素值']
    例://input[@id='kw']

逻辑表达式-and
    当一个元素无法通过属性唯一定位时,可以使用and表达式,使用多个属性定位一个元素 //标签名[@元素属性='元素值1' and @元素属性='元素值2']
    例: //input[@id='kw' and @class='s_ipt']

逻辑表达式-or
    与and类似,指的是当你元素满足其中一个条件的时候,就可以定位到 // 标签名[@元素名称='元素值' or @元素名称='元素值']
    例: //input[@id='kw' or @class='s_t']

非查找
    如果我们想要查找元素值不等于某个值的内容,可以使用!=方法 //标签名称[@元素名称 != '元素值']
    例: //input[@class!='1111']

Not查找
    与非查找类似,非的不同写法 //标签名[not(.='元素值')
    例: //div[not(@id="tab-AndroidVersions")]

模糊匹配
    模糊查找某个元素 //标签名[contains(text(), "内容"]
    例: //div[contains(@class, "close")]

轴方式定位
    parent::* 表示当前节点的父节点元素
    例://div[@class="cell" and text()='1338']/parent::*

    ancestor::*  表示当前节点的祖先节点(父节点,父节点的父节点....一直到根)元素
    例: //div[@class="cell" and text()='1338']/ancestor::*

    descendant::* 表示当前节点的后代节点(子节点,子节点的子节点....)
    例://div[@class="cell" and text()='1338']/descendant::*

    child::*  表示当前节点的子元素
    例: //div[@class="ivu-table-header"]/child::*

    self::*  表示当前节点的自身元素
    例: //div[@class="ivu-table-header"]/self::*

    ancestor-or-self::*  表示当前节点的及它的祖先节点元素
    例: //div[@class="ivu-table-header"]/ancestor-or-self::*

    descendant-or-self::*  表示当前节点的及它们的后代元素
    例: //div[@class="ivu-table-header"]/descendant-or-self::*

    following-sibling::*  表示当前节点的后序所有兄弟节点(同一级的)元素
    例: //div[@class="ivu-table-header"]/following-sibling::*

    preceding-sibling::*  表示当前节点的前面所有兄弟节点元素
    例: //div[@class="ivu-table-tip"]/preceding-sibling::*

    following::*  表示当前节点的后序所有元素
    例://div[@class="ivu-table-tip"]/following::*

    preceding::*  表示当前节点的所有元素
    例: //div[@class="ivu-table-tip"]/preceding::*

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

selenium-XPATH定位 的相关文章

  • 从顶部开始在同一水平线上显示同一行中的两个 div

    这是我的代码 floating box display inline block width 150px margin 10px border 3px solid 73AD21 after box border 3px solid red
  • 如何设置视频文件的预览,从输入类型='文件'中选择

    在我的模块之一中 我需要从 input type file 浏览视频 之后我需要在开始上传之前显示选定的视频 我使用基本的 HTML 标签来显示 但它不起作用 这是代码 document on change file multi video
  • 使用其innerHTML查找元素

    请看一下这个 DOM 树 div div span Home1 span div span Home2 span span Home3 span div 现在假设我有一个场景 我以某种方式获得了第一个跨度的innerHTMLHome1 是否
  • 链接无效

    我正在尝试使用以下命令创建一组指向页面中特定部分的链接 a href 符号 但它似乎不起作用 点击链接似乎没有任何反应right click gt open in a new tab更改 url 但不会移动到页面的其他部分 我使用的是火狐浏
  • save_and_open_page 已停止提供我的 CSS

    我的测试设置工作得很好 每当我打电话时 都能提供正确格式的 css 页面save and open page从测试中 然后 我设置了一些 javascript 测试 并对我的设置进行了一些更改 抱歉 我无法详细说明所有内容 我没有足够详细地
  • 多语言标记验证器

    是否有免费的在线多语言标记验证服务可以正确识别和验证多语言标记 我确实找到了totalvalidator和htmlvalidator 但这些是 付费 非基于网络的解决方案 Use http validator w3 org nu http
  • 如何使自定义 Web 组件可聚焦?

    我正在写一个自定义网络组件 https github com denilsonsa html5 knob这意味着是互动的 我如何告诉浏览器这个自定义组件应该获得焦点 我希望我的自定义元素 可以聚焦 通过选项卡导航 集中注意力时可以接收按键信
  • 将鼠标悬停在原点时会触发translateY()

    当您将光标移动到按钮底部时 是否可以无限期地不触发动画 它看起来是这样的 gif https i stack imgur com QwdHW gif and codepen https codepen io jaeyson pen GwwJ
  • 网站在 iPhone 屏幕右侧显示空白区域

    我遇到问题http eiglaw com http eiglaw com iPhone 屏幕右侧显示约 25 像素宽的空白 边框 我在 stackoverflow 上研究了这个问题 这些帖子是相关的 但是当我尝试提供的各种解决方案时 我无法
  • div 中的中心文本?

    我有一个div 30px高和500px宽的 这div可以包含两行文本 一行在一行 并相应地设置样式 填充 但有时它只包含一行 我希望它居中 这可能吗 要水平居中 请使用text align center 要垂直居中 只能使用vertical
  • Sass:@use 出错,未定义变量

    我正在使用 Sass 并且想要使用 use关键字而不是 import 因为 import有很多问题 另外只有dart sass支持这个功能 我将node sass改为dart sass 然而 问题出现了 我原来的代码 import carb
  • 如何在Yii框架中向Form添加类?

    我在 Yii 中有一个表单 我想向该表单添加一个类
  • 转义 h 轮廓

    因此 我一直在尝试找出在被较低级别的标题吸引后添加内容的最佳方法是什么 section h1 Title of Section h1 h2 Related 1 h2 h2 Related 2 h2 p I NEED THIS TO BE P
  • 如何使用角度材料在具有可扩展行的表格中创建嵌套垫表

    我有以下数据 id c9d5ab1a subdomain wing domain aircraft part id c9d5ab1a info mimetype application json info dependent parent
  • 为什么我的交互式图像仅在 Internet Explorer 上出现故障?

    我的问题 我为自己制作了一个图像地图 交互式图像 它在 Chrome safari 和 Firefox 上完美运行 然而 当我在可怕的互联网浏览器上尝试它时 它真的很糟糕 这些小点应该扩展到更大的盒子中 在互联网浏览器上它要么不起作用 要么
  • 具有 100% 高度行和 Internet Explorer 9 的表格

    我有以下示例 div style height 150px background color AAAAFF div
  • 表单发布请求并存储收到的数据

    我有一个非常简单的表单 在提交时发出发布请求
  • 如何使用 JavaScript 或 jQuery 克隆 HTML 元素的样式对象?

    我正在尝试克隆元素的样式对象 这应该允许我在更改后重置所述元素的样式 例如 el style left 50px curr style left 50px Modify the elements style The cloned style
  • 使用javascript动态更新css内容

    需要将 css 更新为动态值 我不确定最好的方法是什么 div style zoom 1 div 缩放级别将根据窗口大小调整触发 应用程序将相应缩放 我将此应用程序加载到 cordova 中并让它在 iPAD 中运行 然后我意识到需要使用
  • 从 PHP 数组生成 HTML 表

    我不明白这一点 我需要解决看似简单的问题 但这超出了我的逻辑 我需要编写一个函数 table columns input cols 它将输出一个表 示例 input array apple orange monkey potato chee

随机推荐

  • 关于 栈 和 队列,你还在犯迷糊吗?

    我是目录 1 队列 1 Queue 队列 2 Deque 双向队列 2 栈 从数据结构角度来看 栈 和 队列 都是一种特殊的线性结构 只是对 插入 删除 元素的方式做了限制 栈 先进后出 push pop peek 的时间复杂度都是 O 1
  • git rebase小计

    http www cnblogs com kym archive 2010 08 12 1797937 html git rebase 顾名思义 就是重新定义 re 起点 base 的作用 即重新定义分支的版本库状态 要搞清楚这个东西 要先
  • 74160同步置数法解析(以接成同步八进制计数器为例)

    我们先来看一下电路逻辑图 从中提取核心信息 将QD QC QB QA接成0010是为了配合LOAD引脚使用 以将74160的状态置为0010 计数器的最大状态为1001 当74160到达1001时 通过7400N与非门将LOAD引脚置为0
  • Linux 下安装zabbix

    一 下载安装zabbix 1 下载zabbix root localhost wget https mirrors tuna tsinghua edu cn zabbix zabbix 4 0 rhel 7 x86 64 zabbix re
  • OFFICE2016用过一段时间后正版密钥显示未激活问题

    转自百度知道 用户 kay陈健 侵删 一般出现这种问题是你电脑中先安装了一个版本的office 但是没有激活 没有将其卸载干净 然后又安装了另外一个版本的office 后者激活了 我也遇到了这个问题 目前已按如下方法解决 1 运行下面的命令
  • Arcgis 重装 的 license 问题

    1 卸载不干净 C arcgis安装目录 C ProgramData ESRI C Program Files x86 Common Files 2 注册表 删除有关Arcgis和ESRI的注册表 我是一条分割线 最后 我学会了重装系统
  • if...else; 嵌套if...else

    if else结构 如果怎么样 否则怎么样 if 分支条件 当条件满足时执行 else 当条件不满足时执行 注意 分支条件返回的一定是一个布尔类型 当分支中有且只有一行代码的时候 是可以省略大括号 gt 不推荐 和 之间不能添加任何符号 i
  • Java中 类名+方法名(){}的意思

    public class GetVersion public VersionBean get version code Context context String packagename if getPackageInfo context
  • pandoc 使用方法

    我是使用的 typora mac 版本 在下载 pandoc 完成后使用 pandoc 导出word时出现闪退情况 导致不能成功导出 然后就搜索到 pandoc 的命令行方法 以此记录下来 1 进入https pandoc org 下载 p
  • 代码片段

    以下代码是从Stack Overflow上看到的 对于C virtual的特性挺有参考意义的 于是记录下来 class A public void f std cout lt lt A lt lt std endl class B publ
  • 安全知识试题

    安全知识试题 一 单选题 共计30分 1 1分 在 QQ 群里有一朋友称 他们的学校近期有国外某知名大学教授来上课 上完课程后就可以拿到该大学文凭 但要交 26800 元的学费 正确的做法是 A 判定为诈骗信息 2 1分 在校园里东西丢失该
  • Android OpenGLES 学习笔记

    GL10 纹理问题 贴纹理的时候最好是要 2 n 字节对齐 这里说的是最后绑定到 GL 的那个图片 如果这个图片是由别的图片组合的 则组合的小图片没有这个要求 还有纹理的大小不能超过 GL 最大纹理大小的限制 查询方法 这里是 GL 标准的
  • vue+element表格使用vue-json-viewer实现查看JSON数据效果

    效果图 功能 在element弹窗中根据表格行查看当前行的JSON数据 高亮 可折叠 可复制 这里需要先安装vue json viewer插件 官网地址 https www npmjs com package vue json viewer
  • 神经网络编程基础

    目录 1 二分类 Binary Classification 2 逻辑回归 Logistic Regression 3 逻辑回归的代价函数 Logistic Regression Cost Function 4 梯度下降法 Gradient
  • nodejs调整版本问题

    因为接触到的项目渐渐增多 前端项目所需的nodejs版本也出现了分歧 之前一直用的14 16版本需要调换成八点几的版本 因为不会调整 所以多走了很多弯路 记录下来 以备不时之需 根据网络上所说可以使用nvm进行调整 所以在卸载nodejs之
  • C#进行MapX二次开发之MapX基础知识

    C 进行MapX二次开发之MapX基础知识 MapX的主要技术特点 1 以表 Table 的形式组织信息 每一个表都是一组MapInfo文件 这些文件组成了地图文件和数据库文件 为使用MapInfo 就需要有组成表的用户数据和地图文件 这些
  • 从LXMERT到VLMO:多模态预训练模型的演变史

    作者 吉雅太 单位 清华大学 研究方向 多模态研究 自从 2018 年 BERT 在 NLP 领域声名鹊起 通过预训练在 n 多 NLP 任务中刷榜 成功发掘出了 transformer 的潜力 众多研究者就看到了多模态发展的新的机会 使用
  • C/C++ 打印三角形

    打印三角形是C语言的经典例题 首先我们先看看效果图 一 直角三角形 ok 现在从最简单的打印直角三角形开始 通过以上效果图你会发现规律 行数 的个数 1 1 2 2 3 3 4 4 5 5 n n 根据以上规律写出以下代码 include
  • 查缺补漏:集和与非平凡属性

    查缺补漏 集和与非平凡属性 前面的习题和知识点补充 Conjunctive normal form CNF 是布尔逻辑的一种方法 它将公式表示为带有AND或or的子句的连词 由连词or AND连接的每个子句必须是文字或包含析取or运算符 子
  • selenium-XPATH定位

    XPATH定位 相对路径 相对定位是两个杠表示 相对路径易维护 例 div 1 div 2 绝对路径 绝对定位用一个杠 绝对路径一个层级变化所有空间都有变化 例 html body div 1 section section main di