2013-11-28 4 views
0

셀렌 크롬 webdriver를 사용하여 아래 xpath와 링크를 찾으려고합니다. .특정 텍스트와 링크 찾기

<span class="yyy"> 
<a href="xxx", target="_top"> 
<font>Home</font> 
</a> 
</span> 

난 그냥 그냥 에서 오전 페이지를 식별 할 요소를 찾으려하지만이 항상 나에게 예외 : NoSuchElementException를 반환

xpath = '//a[contains(text(),"Home")]' 
driver.find_element_by_xpath(xpath) 

이 링크는 소스에 방법이다. 그런 요소를 찾는 올바른 방법은 무엇입니까?

답변

2

a 요소에 텍스트가 전혀 포함되어 있지 않기 때문입니다. 여기에는 안에 텍스트가 포함되어있는 font이 포함되어 있습니다.

약간 수정 :

//a[font[contains(text(), 'Home')]] 

(당신이 사용하는 이유하지만 잘 모르겠어요 "포함"당신이 이 정직하게 일치 동일해야한다)

+0

나는이 내가 시도 또한 시도했다 '// [font [text() = "Home"]]'. 그리고 여전히 NoSuchElementException이 발생합니다. – deepng

+0

@deepng 여기에서 작동합니다. IFrame에 있습니까? 어떤 브라우저? 'WebDriverWait'를 사용하여 요소를 기다리려고 했습니까? – Arran

+0

예, 나도 iFrame이 될 것이라고 생각합니다. 내가 iFrame을 바꿀 수 있는지 알게 될 것입니다. WebDriverWait을 사용해 보았지만 작동하지 않았습니다. – deepng

관련 문제