html - 找出在 Robot Framework 中有用的 XPath

标签 html xpath robotframework

我需要访问看起来像表格的东西的第一个单元格(但有点奇怪 - 第一列的 DIV 在结构上“高于”同一行的其余单元格)。

<div class="slick-viewport slick-viewport-top slick-viewport-left" tabindex="0" hidefocus="" style="overflow: auto; width: 100%; height: 513px;">
   <div class="grid-canvas grid-canvas-top grid-canvas-left" tabindex="0" hidefocus="" style="height: 825px; width: 1336px;" unselectable="on">
      <div class="ui-widget-content slick-row  even lastClicked selected" role="row" row="0" style="top:0px;">
         <div class="slick-cell l0 r0  uppercase selected" aria-describedby="inforDataGrid160360C1" tabindex="-1" role="gridcell"><span style="float: left;display:inline-block;height:1px;width:0px"></span><button type="button" class="tree-expand inforIconButton  closed"><span></span></button><span>ABC</span></div>
         <div class="slick-cell l1 r1  uppercase selected" aria-describedby="inforDataGrid160360C2" tabindex="-1" role="gridcell">DEF</div>
         <div class="slick-cell l2 r2  uppercase selected" aria-describedby="inforDataGrid160360C3" tabindex="-1" role="gridcell">GHI</div>
      </div>
      <div class="ui-widget-content slick-row  odd" role="row" row="1" style="top:25px;">
         <div class="slick-cell l0 r0  uppercase" aria-describedby="inforDataGrid160360C1" tabindex="-1" role="gridcell"><span style="float: left;display:inline-block;height:1px;width:0px"></span><button type="button" class="tree-expand inforIconButton  closed"><span></span></button><span>JKL</span></div>

我正在寻找指出 ABC 的有用信息。可以看到上面的 div 具有 row="0" 属性,使用起来似乎很合理。带有 ABC 的 div 有类 l0 r0 这似乎也很有用(但有点违反直觉的是同一行的下一个单元格的类 - 包含 DEF - 不是 l0 r1l1 r0 或类似的东西,而不是 l1 r1)。

另外,许多 DIV 级别上面有一个 id="contentBody",我想包含它。

所以类似于 //contentBody/*/row="0"/class="l0 r0"

我如何构造这个 XPath?

(DEF 是第一行的第二个单元格/列,GHI 是第一行的第三个单元格/列。JKL 是第二行的第一个单元格/列。我包含这个是为了让您了解这个表是如何构建的)。

最佳答案

这个应该返回所需的div:

//div[@id="contentBody"]//div[@row="0"]/div[contains(@class, "l0") and contains(@class, "r0")]

在 CSS-selector 中相同:

div#contentBody div[row="0"]>div.l0.r0

您可以使用 selectors cheat-sheet用于创建 XPath/CSS 选择器以及 tutorial , documentation深入了解

关于html - 找出在 Robot Framework 中有用的 XPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53617040/

相关文章:

python - 无法从 RIDE 连接到 MySQL 数据库

javascript - 使用淡出扩展文本部分

php - 如何执行使用 ssh 和 php 的 bash 脚本

java - 如何使用 WebDriver 验证下拉菜单的启用禁用值?

python - 在 Selenium python 中通过 xpath 模式查找元素

robotframework - 在 Robot Framework 中解析 bool 值

html - html中的<b>标签和<strong>标签有区别吗

javascript - HTML 将表单提交给 PHP 但需要使用 Javascript 进行一些解析

python - Xpath提取多个节点之间的所有文本?

python - robotsframework看不到xpath