Selenium 使用xpath访问文本时出现问题
我试图在下面的html中找到批准,但似乎无法获得批准。我试过:Selenium 使用xpath访问文本时出现问题,selenium,xpath,selenium-webdriver,Selenium,Xpath,Selenium Webdriver,我试图在下面的html中找到批准,但似乎无法获得批准。我试过: //td[*/text()='Approvals'] //td[包含(@class,'Approvals')] 任何帮助都将不胜感激 <td class="ThemeGrayMainItem" name="cmSubMenuID4" onmouseup="cmItemMouseUp (this,1,'cmSubMenuID4',0,32)" onmouseout="cmItemMouseOut (this,1
//td[*/text()='Approvals']
//td[包含(@class,'Approvals')]
<td class="ThemeGrayMainItem" name="cmSubMenuID4"
onmouseup="cmItemMouseUp (this,1,'cmSubMenuID4',0,32)"
onmouseout="cmItemMouseOut (this,1,'cmSubMenuID4',0,32)"
onmousedown="cmItemMouseDown (this,1,'cmSubMenuID4',0,32)"
onmouseover="cmItemMouseOverOpenSub (this,1,'cmSubMenuID4',0,32)">Approvals
</td>
批准
您可以使用contains()
:
其中
指元素的文本
您还可以对类名应用其他检查,例如:
//td[@class='ThemeGrayMainItem' and contains(., 'Approvals')]
我将使用以下xpath:
//td[contains(text(),'Approvals')]
或者,如果您想更具体一些:
//td[@class='ThemeGrayMainItem'][contains(text(),'Approvals')]
HTML似乎不完整,因此XPATH表达式的工作数据并不明显。尤其是第一个
*
返回一些节点序列,而该序列取决于HTML中的内容,我们只能在一个小摘录中看到,因此我们很难知道与'Approvals'相比,什么是LHS。。。
//td[@class='ThemeGrayMainItem'][contains(text(),'Approvals')]