2013-11-28 6 views
0

Использование selenium chrome webdriver Я пытаюсь найти ссылку на приведенный ниже xpath.Найти ссылку с конкретным текстом

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

Это как ссылка в источнике:

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

Я просто хочу, чтобы найти элемент, просто идентифицировать страницу Я в Но это всегда возвращает NoSuchElementException ко мне.. Каков правильный способ найти такой элемент?

ответ

2

Это потому, что элемент a не содержит никакого текста. Он содержит font и , что содержит текст внутри него.

Так изменить его немного:

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

(Хотя почему вы используете «Содержит» Я не уверен, вы должны выполнить команду равно матч, чтобы быть честным)

+0

Я попытался это и я также попытался использовать // // [font [text() = "Home"]] '. И я все еще получаю исключение NoSuchElementException. – deepng

+0

@deepng Работает здесь. Это в IFrame? Какой браузер? Вы пробовали ждать элемент с помощью 'WebDriverWait'? – Arran

+0

Да, я тоже думаю, что это может быть iFrame. Я увижу, могу ли я изменить iFrame. Я пробовал WebDriverWait, но это не сработало. – deepng

Смежные вопросы