gpt4 book ai didi

selenium - selenium 是否可以使用 xpath 通过其 "for"属性找到标签元素?

转载 作者:行者123 更新时间:2023-12-03 17:12:41 24 4
gpt4 key购买 nike

selenium 是否可以使用 xpath 通过其“for”属性找到标签元素?

我正在测试一个连续有 7 个是或否问题的网站。 CSS 的完成方式是单击标签而不是输入单选按钮。通常我只是通过文本内容找到元素,但每个问题都有一个是和否。

我在想一种解决方法是在输入按钮上单击 javascript 来解决我在尝试直接 .click() 输入时遇到的“元素不可见”错误,但我想看看如果有更好的方法来定位用户实际点击的标签。

*为所有不记得标签元素是什么样子的人编辑。您将如何从该组中选择中间的那个?

<label for="superLongSetOfRandomCharacters123" class="common-to-all-buttons"> No </label>
<label for="superLongSetOfRandomCharacters345" class="common-to-all-buttons"> No </label>
<label for="superLongSetOfRandomCharacters456" class="common-to-all-buttons"> No </label>

更具体地说,这就是它们在 DOM 中的位置
<ul class="list-view list-view-dividers">
<li class="list-view-item">
<div class="content">
<div id="variableValue1" class="multipleChoice">
<div class="form-row">
<label>Question 1</label>
<div class="form-row">
<table class="choices" id="randomlyGenerated-1">
<tbody>
<tr>
<td>
<div class="ui-radio"><label for="randomlyGenerated1" class="ui-btn ui-corner-all ui-btn-inherit ui-btn-icon-left ui-radio-off"> Yes</label><input id="randomlyGenerated1" type="radio" name="randomlyGenerated1" value="Yes"></div>
</td>
<td>
<div class="ui-radio"><label for="randomlyGenerated2" class="ui-btn ui-corner-all ui-btn-inherit ui-btn-icon-left ui-radio-off"> No</label><input id="randomlyGenerated2" type="radio" name="randomlyGenerated2" value="No"></div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div id="randomlyGenerated1-Error" class="component-error"></div>
</div>
</div>
</li>
<li class="list-view-item">
<div class="content">
<div id="variableValue2" class="multipleChoice">
<div class="form-row">
<label>Question 2</label>
<div class="form-row">
<table class="choices" id="randomlyGenerated-2">
<tbody>
<tr>
<td>
<div class="ui-radio"><label for="randomlyGenerated21" class="ui-btn ui-corner-all ui-btn-inherit ui-btn-icon-left ui-radio-off"> Yes</label><input id="randomlyGenerated21" type="radio" name="randomlyGenerated21" value="Yes"></div>
</td>
<td>
<div class="ui-radio"><label for="randomlyGenerated22" class="ui-btn ui-corner-all ui-btn-inherit ui-btn-icon-left ui-radio-off"> No</label><input id="randomlyGenerated22" type="radio" name="randomlyGenerated22" value="No"></div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<div id="randomlyGenerated2-Error" class="component-error"></div>
</div>
</div>
</li>
</ul>

最佳答案

它适用于选择目标为“for”的所有标签:label[@for='superLongSetOfRandomCharacters123']或者您可以离开 @for=''空白用于选择具有任何值的所有标签(即 label[@for] )

关于selenium - selenium 是否可以使用 xpath 通过其 "for"属性找到标签元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31418206/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com