Я пытаюсь выбрать правильный элемент при использовании функции поиска через интерфейс. Проблема в том, что в зависимости от поискового запроса код заполняется по-разному.
Вот пример с двумя поисковыми запросами:
- "Test"
- "Test2"
Поиск «Тест» создаст следующий HTML-код:
<td id="__item40_cell0" style="text-align:left" class="sapMListTblCell">
<div id="__result32" <div class="surjcontent">
<em class="surjhighlight">Test</em>
2
<span class="info">Milieudienst (12345))</span>
</div>
</div>
</td>
<td id="__item41_cell0" style="text-align:left" class="sapMListTblCell">
<div id="__result33" <div class="surjcontent">
<em class="surjhighlight">Test</em>
<span class="info">Milieudienst (12345))</span>
</div>
</div>
</td>
Поиск «Тест2» :
<td id="__item40_cell0" style="text-align:left" class="sapMListTblCell">
<div id="__result32" <div class="surjcontent">
<em class="surjhighlight">Test2</em>
<span class="info">Milieudienst (12345))</span>
</div>
</div>
</td>
Когда есть только 1результат поиска (пример "Test2" выше), проблем нет. Тогда Xpath может быть: //em[contains(text(), 'Test2')]
. Однако, как вы можете видеть в первом фрагменте, когда есть почти идентичные элементы, это становится сложнее (для меня это так) из-за того, что класс <em></em>
заполнен, а оставшийся текст помещен в следующую строку:
против 2
Как выбрать правильный элемент в случае с примером "Тест", игнорируя тег <span></span>
, и в то же время обдумывая несколько похожих результатов.
Пытался покончить с этим, следовать за родным братом и т. Д. Но не могу заставить его работать так, как я к нему подхожу.