html - 如何为不同 HTML 标记显示的相同文本编写通用 XPath?

标签 html xml selenium selenium-webdriver xpath

我想为搜索文本“自动化服务器”显示的结果编写一个通用的 XPath

td HTML 标签和 div html 标签显示相同的文本,如下所示,我根据自己的理解编写了 XPath,如下所示不同的文章

displayed_text = //td[contains(text(),'Automation Server') or div[contains(text(),' Automation Server ')]

<td role="cell" mat-cell="" class="mat-cell cdk-cell cdk-column-siteName mat-column-siteName ng-star-inserted">Automation Server</td>

<div class="change-list-value ng-star-inserted"> Automation Server </div>

最佳答案

您在 XPath 中寻找的运算符是 |。它是一个联合运算符,将返回两组元素。

您要查找的 XPath 是

//td[contains(text(),'Automation Server')] | //div[contains(text(),'Automation Server')]

关于html - 如何为不同 HTML 标记显示的相同文本编写通用 XPath?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73438194/

相关文章:

selenium - 页面工厂中ElementLocatorFactory和FieldDecorator的作用是什么?

javascript - 使用 Javascript 下载图像并将其转换为 Blob

javascript - Angular - 找不到模块

css - 如何根据视口(viewport)大小调整元素的高度?

xml - Groovy:使用 GPathResult.appendNode(node) 合并两个 XML 文件不起作用

python - 如何在 python 中抑制控制台/cmd 错误消息

html - 如何在 html 模板中生成项目数组以在 Node Js 中创建 pdf?

c++ - 如何将 Boost 属性树的子树序列化为 XML

c# - 为什么面试官要问高级问题?

java - Selenium : XPATH invalid when stocking it in a String