使用python -automation

时间:2019-03-13 19:45:37

标签: selenium selenium-webdriver xpath webdriver xpath-1.0

我正在尝试为以下元素找到唯一的xpath,请告知是否有更好的xpath可以用于通用文本,如我目前为该特定名称所给出的。

<td tabindex="4" style="text-align: left;" title="name" class="">Name</td>

我正在使用的xpath:// td [@ title ='name']

在这里,如果用代码中的其他名称更改了名称,这将无法正常工作,有人可以帮助我识别唯一适用于任何文本的唯一xpath。谢谢!

3 个答案:

答案 0 :(得分:0)

您可以连接(使用 / )元素的多个属性以精确地找到元素。

By.xpath("//td[@title= 'name' and contains(text(), 'Name')]")

但是,我们需要查看代码的更多详细信息以及您的页面DOM才能找到元素。 以此为相对点,页面中总会有一些永远不变的元素(如表名),我们可以引用表的行。

答案 1 :(得分:0)

找到任何元素的 XPath 的最简单方法是转到开发人员选项,然后选择要使用XPath的元素的标记。

右键单击->复制-> XPath

我相信这是最简单的方法。而且您也会在哪里做错了。

随附的屏幕截图供您参考。

enter image description here

答案 2 :(得分:0)

我使用了通用语法-“ // td [text()='{}']”,并在定义方法时传递了name参数,这样它就不会特定于某个方法,其他人可以使用当其他人使用测试用例时,名称相同的定位器也会更改。

感谢大家的回应!