硒不设置输入字段值
selenium not setting input field value
假设我们有这个网站 https://www.coinichiwa.com/,它有一个投注金额输入框。它的 html 是:
<input autocomplete="off" id="betFa" name="a" maxlength="20" value="0.00000000" class="betinput" style="">
我需要给它增加一些价值。这是我的代码:
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')
假设我们有这个网站 https://www.coinichiwa.com/,它有一个投注金额输入框。它的 html 是:
<input autocomplete="off" id="betFa" name="a" maxlength="20" value="0.00000000" class="betinput" style="">
我需要给它增加一些价值。这是我的代码:
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')