2017-03-13 59 views
2
<body> 
... 
<div class="first-class"> 
    <ul class="container-class> 
    <li> 
     <a><span>Not it</span></a> 
    </li> 
    <li> 
     <a><span>Target</span</a> 
    </li> 

有人可以帮我用xpath找文本吗?在这种情况下,单词目标。列表元素的数量可能会有所不同,因此我不能使用该id,因为它会动态更改。使用xpath找到我的span文本

这是我已经试过:

".//*[@class='first-class']/ul[li a//(text)[contains(.,'Target')]]" 
+0

有方法可以找到基于文本的东西无数,但你不能说正是你想要什么选择。你是否希望选择'span','a','li',...或'div'元素? – kjhughes

+0

我想要在哪里可以点击Selenium中的锚点。我想如果我能找到文本,只需执行点击它将工作。 – Rod

+0

然后请参阅@ Andersson的回答(+1)以选择目标'a'元素。 – kjhughes

回答

3

你可以试试下面XPath

//a[.="Target"] 

//a[span="Target"] 
-2
//a[contains(@span,'Target')] 

应该是所有需要。

+2

'span'不是'a'的属性!我认为你的意思是'// a [包含(span,'Target')]' – Andersson