【发布时间】:2023-03-27 12:56:01
【问题描述】:
如何使用 webdriver 通过标签定位输入字段?
我喜欢测试一个不幸地使用动态生成的网络表单 ids,所以它们不适合作为标识符。
然而,与每个网络元素相关的标签让我觉得很合适。 不幸的是,我无法通过一些建议来做到这一点 在网络上提供。 SO这里有一个线程,但没有 产生一个可接受的答案:
Selenium WebDriver Java - Clicking on element by label not working on certain labels
为了在Java中解决这个问题,通常建议通过其文本内容将标签定位为锚点,然后指定输入元素的xpath:
//label[contains(text(), 'TEXT_TO_FIND')]
我不确定如何在 python 中执行此操作。 我的网络元素:
<div class="InputText">
<label for="INPUT">
<span>
LABEL TEXT
</span>
<span id="idd" class="Required" title="required">
*
</span>
</label>
<span class="Text">
<input id="INPUT" class="Text ColouredFocus" type="text" onchange="var wcall=wicketAjaxPost(';jsessionid= ... ;" maxlength="30" name="z1013400259" value=""></input>
</span>
<div class="RequiredLabel"> … </div>
<span> … </span>
</div>
【问题讨论】:
标签: python selenium xpath selenium-webdriver webdriver