gpt4 book ai didi

javascript - 浏览器期望一个简短的变量输入无法通过 python Selenium 传递

转载 作者:行者123 更新时间:2023-11-30 16:36:32 26 4
gpt4 key购买 nike

我正在致力于自动化与网站的某些交互(我无权访问基本代码)。我认为其中一个文本输入框需要一个“短”整数值。但是,我通过 python/selenium 所做的任何事情都不会成功地将值传递给浏览器。每当我这样做时,我都会收到无效输入错误。

我已经尝试了 driver.send_keys() 的多种变体,其值为字符串、int、unicode 字符串,很长时间都无济于事。

我还尝试通过 javascript 发送值:

driver.execute_script("document.getElementById('short_input').setAttribute('value', arguments[0])", '10')

我还尝试通过 a = array('h')numpy.short('10') 传递一个“short”变量。

当我收到无效输入错误时,我可以通过点击输入框然后点击离开来手动清除它。我假设这是因为该值被重置为代码预期的短整数。

有没有办法通过 selenium 做到这一点?当我尝试 element.click() 时,它不会像手动那样清除错误。还是我错过了传递短变量的另一种方法?

我要修改的值的相关 HTML 是:

<input id="x-auto-23-input" class="N0-com-sencha-gxt-theme-base-client-field-TwinTriggerFieldDefaultAppearance-TwinTriggerFieldStyle-field E1-com-sencha-gxt-theme-base-client-field-TwinTriggerFieldDefaultAppearance-TwinTriggerFieldStyle-text A1-com-sencha-gxt-theme-base-client-field-TwinTriggerFieldDefaultAppearance-TwinTriggerFieldStyle-invalid P0-com-sencha-gxt-theme-base-client-field-TwinTriggerFieldDefaultAppearance-TwinTriggerFieldStyle-focus" type="text" value="" style="width:142px;" tabindex="0">

我在其中看到的任何内容都没有暗示为什么它与普通文本输入框不同。然而,当我执行 element.clear() 后跟 element.send_keys(10) 然后尝试通过单击浏览器的“确定”按钮来保存更改时,我得到了一个错误,它是一个无效的条目。

最佳答案

鉴于提供的 HTML,它应该很简单

driver.find_element_by_id("x-auto-23-input").send_keys("abc")

您应该能够发送一个字符串,因为这是用户将输入到页面本身的内容。页面的内部可能将该字符串转换为另一种数据类型,但页面会为您完成这项工作……您不必担心。

你试过吗?结果如何?

关于javascript - 浏览器期望一个简短的变量输入无法通过 python Selenium 传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32633017/

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