У меня появилось диалоговое окно с нажатием на элемент. В этом диалоговом окне есть 2 таблицы (HTML). Таблица в таблице. Таблица 1 содержит текст «Коды аудита соответствия» Таблица 2 содержит несколько строк и столбцов. В колонке 1 установлен флажок. Столбец 2 имеет значение char, например. буква «I») В колонке 3 есть текст, например. «Совпадение с полным адресом»Selenium Python Как найти правильный элемент флажка из таблицы HTML в таблице с помощью XPath
Я хотел бы найти флажок из колонки 1, который имеет описание текста «Совпадение с полным адресным» и родительской таблицу имеют текст «коды аудита Match "
Я попытался следующий Xpath, который определяет местонахождение флажок, который имеет текст„Совпадение с полным адресом“
//div[contains(text(), "Matched to full address")]/ancestor::tr[1]/td[1]//input
Мой скрипт Selenium Python не будет нажимать на этот флажок. Разработчик говорит, что где-то в HTML может быть больше 1 «Совместный полный адрес».
мне нужно Xpath начать с родительской таблицы, которая имеет текст «коды аудита соответствует», а затем спуститься к следующей таблице которая имеет текст «Совпадение с полным адресом» и затем установите флажок.
Как я могу построить Xpath, пожалуйста?
HTML, является:
<table class="GJPPK2LBAL" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td align="left" style="vertical-align: top;">
<div class="GJPPK2LBPK">Match audit codes</div>
</td>
<td align="left" style="vertical-align: top;">
<button class="gwt-Button GJPPK2LBLK" type="button">X</button>
</td>
</tr>
</tbody>
</table>
<table class="GJPPK2LBOK" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td align="left" style="vertical-align: middle;">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr>
<tr>
<td align="left" style="vertical-align: top;">
<div style="overflow: auto; position: relative; width: 25em;">
<div style="position: relative;">
<table class="GJPPK2LBJE" cellspacing="0"
__gwtcellbasedwidgetimpldispatchingfocus="true"
__gwtcellbasedwidgetimpldispatchingblur="true">
<thead aria-hidden="false">
<colgroup>
<tbody>
<tr class="GJPPK2LBCD" __gwt_subrow="0" __gwt_row="0">
<td class="GJPPK2LBBD GJPPK2LBDD GJPPK2LBED">
<div __gwt_cell="cell-gwt-uid-5972" style="outline-style:none;">
<input type="checkbox" tabindex="-1"/>
</div>
</td>
<td class="GJPPK2LBBD GJPPK2LBDD">
<div __gwt_cell="cell-gwt-uid-5973" style="outline-style:none;">I</div>
</td>
<td class="GJPPK2LBBD GJPPK2LBDD GJPPK2LBOD">
<div __gwt_cell="cell-gwt-uid-5974" style="outline-style:none;">Matched to
full address
</div>
</td>
</tr>
<tr class="GJPPK2LBCE" __gwt_subrow="0" __gwt_row="1">
<td class="GJPPK2LBBD GJPPK2LBDE GJPPK2LBED">
<div __gwt_cell="cell-gwt-uid-5972" style="outline-style:none;">
<input type="checkbox" tabindex="-1"/>
</div>
</td>
<td class="GJPPK2LBBD GJPPK2LBDE">
<div __gwt_cell="cell-gwt-uid-5973" style="outline-style:none;">B</div>
</td>
<td class="GJPPK2LBBD GJPPK2LBDE GJPPK2LBOD">
<div __gwt_cell="cell-gwt-uid-5974" style="outline-style:none;">Matched to
building
</div>
</td>
</tr>
<tr class="GJPPK2LBCD" __gwt_subrow="0" __gwt_row="2">
<tr class="GJPPK2LBCE" __gwt_subrow="0" __gwt_row="3">
</tbody>
<tbody style="display: none;">
<tfoot style="display: none;" aria-hidden="true"/>
</table>
Спасибо, Riaz
Да, это работает. Теперь Selenium нажимает на элемент. Спасибо за помощь! –
Рад, что я мог помочь! В следующий раз попытайтесь опубликовать полный действительный XHTML. Это облегчает воспроизведение, поэтому вы получите больше ответов быстрее. –