Итак, я использую Selenium и хотел бы получить определенную информацию, напечатанную на веб-странице. В отличие от обычной страницы, которая будет печатать текст, информация отображается другим способом. Источник на веб-странице выглядит следующим образом.Получение текста из оператора if
<div class="a">
<script id="b">
<div class="c">
<div class="d">
#if
Print X.
{else}
Print Y.
</div class>
</script>
</div class>
</div class>
Я хотел бы получить либо X, либо Y на основе того, что напечатано, как я могу получить эту информацию?
EDIT:
Мой сценарий тег выглядит следующим образом
<script id="plansTemplate" type="text/template" defer="defer">
И когда я запускаю следующую строку кода,
driver.findElement(By.xpath("//select[@id='plansTemplate']")).getText();
Я получаю ошибку
Не удалось найти элемент: {"method": "xpath", "selector": "// s Избранный [@ ID = 'plansTemplate'] "}
Использование XPath является одним из способов. –
Что бы я установил в качестве категории и какой будет идентификатор? – user2612619
Используйте 'id' тега' script' и получите данные второго дочернего элемента div. Вы также можете получить элемент по его «классу», если это проще, и каждый класс 'div' отличается. Еще одно предложение - исправить ваш xml, чтобы ваши закрывающие теги совпадали. –