python - Selenium 不设置输入字段值

标签 python selenium selenium-webdriver automation

假设我们有这个网站 https://www.coinichiwa.com/其中有一个 BET AMOUNT 输入框。它的 html 是:

<input autocomplete="off" id="betFa" name="a" maxlength="20" value="0.00000000" class="betinput" style="">

我需要给它增加一些值(value)。这是我的代码:

browser = webdriver.Firefox()
browser.get('https://www.coinichiwa.com')

browser.find_element_by_id("betFa").send_keys("0.00000005")
print browser.find_element_by_xpath("//input[contains(@id,'betFa')]").text

但它既没有将其值设置为“0.00000005”,也没有打印输入的 value

我不确定出了什么问题。你能建议吗? 为什么它不起作用?

最佳答案

您需要clear()首先输入文本:

bet_fa = browser.find_element_by_id("betFa")
bet_fa.clear()
bet_fa.send_keys("0.00000005")

至于你的第二个问题 - 这是一个 input,你输入的值保存在 value 属性中,而不是文本。使用 get_attribute()方法:

browser.find_element_by_xpath("//input[contains(@id,'betFa')]").get_attribute('value')

关于python - Selenium 不设置输入字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28346240/

相关文章:

testing - 使用不同输入文件的数据驱动自动化测试

python - 如何使用python将值插入xml变量

selenium - 为 selenium python 安装 "pip undetected-chromedriver"

java - 使用@FindBy查找WebElementS

php - 用 mink 操纵标签

java - 在 cssSelector webdriver 上转义特殊字符

iphone - NSURLRequest POST 到谷歌应用引擎?

python - 从 python pandas 中的列表运行多个查询条件

python - 如何检测客户端何时与 UDS(Unix 域套接字)断开连接

java - UI 自动化 - 自愈剂