Поиск элемента без тега с использованием XPath - PullRequest
0 голосов
/ 28 октября 2019

Я пытаюсь найти первую строку текста в элементе H4 с помощью Selenium.

HTML выглядит следующим образом:

<div id="login_credentials" class="login_credentials">
    <h4>Accepted usernames are:</h4>
    standard_user<br>
    locked_out_user<br>
    problem_user<br>
    performance_glitch_user<br>
</div>

Я пытался получить доступ к H4элемент, а затем его потомки, используя путь //h4/text(), но мне не повезло.

1 Ответ

0 голосов
/ 28 октября 2019

Текст не является дочерним элементом тега <h4>, он является частью элемента <div>. Вы можете получить текст этого элемента и разделить его на новую строку \n, чтобы получить текст в виде массива

IWebElement element = driver.FindElement(By.Id("login_credentials"));
string[] rows = element.Text.Split('\n');
//rows[0] is "Accepted usernames are:"
//rows[1] is "standard_user"

. В качестве примечания, xpath text() возвращает текстовый узел, который не поддерживается Selenium.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...