2016-03-05 88 views
0

HTML部分:無法與XPath硒獲得元素的webdriver

<li tabindex="-1" role="option" unselectable="on" class="k-item k-state-focused" data-index="0" id="6609432f-2fd2-49c1-95df-6a330acecca0">admin</li> 

這裏的Xpath我正努力:

driver.findelement(by.xpath("//li[text()=//li[. = 'admin']")); 

但是,得到的異常:

無效的選擇:無法找到具有xpath表達式的元素// li [text()= // li [。 ='admin']由於以下錯誤:

SyntaxError:未能對'Document'執行'evaluate':字符串'// li [text()= // li [。 ='admin']'不是有效的XPath表達式。

精確看看UI和HTML代碼:

enter image description here

那場汽車complete.ID正在改變的動力,元素的,所以我不能使用的ID在這裏找到的元素。

回答

3

你的XPath表達式語法上不正確的,有一個額外的[,解決它:

//li[text()='admin'] 

或者,您也可以使用.指當前節點的文本:

//li[. = 'admin'] 
+0

感謝您的迴應,我只是嘗試了您給出的解決方案,並得到了一些更接近的錯誤,我更新了問題,請您看看。 –

+0

@HelpingHands yup,但你仍然在嘗試一個無效表達式// // li [text()= // li [。 ='admin']'。試試'// li [。 ='admin']'。謝謝。 – alecxe

+0

優秀的解決方案。有用:) –