gpt4 book ai didi

python - 如何修复 Selenium 不清除输入上的默认文本

转载 作者:太空宇宙 更新时间:2023-11-03 21:16:09 25 4
gpt4 key购买 nike

我正在尝试在包含默认字符串的文本字段中输入金额。

该字段的 HTML:

<div class="InputGroup">
<span class="InputGroup-context">$</span>
<input autocomplete="off" class="Input InputGroup-input" id="amount" name="amount" type="text" maxlength="12" value="0.00">
</div>

当尝试向字段输入文本时,它不会替换默认文本,而是将其附加到该字段。

我尝试使用 amount.clear() (金额是我调用该元素的内容),但在运行该元素并发送 key 后,它会抛出以下异常:

selenium.common.exceptions.StaleElementReferenceException: Message: stale element reference: element is not attached to the page document

正如您从我当前的代码中看到的,我还尝试双击默认文本,但这没有帮助。

这是我目前的代码:

ActionChains(driver).move_to_element(amount).click(amount).click(amount).perform()
amount.send_keys(Keys.BACKSPACE)
amount.send_keys('100')

当我期望 100 时,输入字段的结果为 0.00100。

最佳答案

某些基于 JS 的网络应用程序可能无法正确清除输入字段。

您可以尝试使用 Actions 类来单击并完全清除字段。例如:

elem = driver.findElement(By.id("amount"))
actions.move_to_element(elem).click().build().perform()
actions.send_keys(Keys.BACKSPACE)
.send_keys(Keys.BACKSPACE)
.send_keys(Keys.BACKSPACE)
.send_keys(Keys.BACKSPACE).build().perform()

关于python - 如何修复 Selenium 不清除输入上的默认文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54693401/

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