繁体   English   中英

使用 driver.find_element_by_xpath().clear() 清除输入字段

[英]Clear input field with driver.find_element_by_xpath().clear()

我有一个输入框,里面有数字,我想清理它但是打电话时

driver.find_element_by_xpath('/html/body/div[1]/div/div[3]/form/section/div/div/input').clear()

他们不删除。 如果我从 Python Shell 运行相同的,它工作。 尝试超时但无法清除。

我需要发送密钥

driver.find_element_by_xpath('/html/body/div[1]/div/div[3]/form/section/div/div/input').send_keys('50')

试过了

time.sleep(3)
driver.find_element_by_xpath('/html/body/div[1]/div/div[3]/form/section/div/div/input').clear()
time.sleep(3)
driver.find_element_by_xpath('/html/body/div[1]/div/div[3]/form/section/div/div/input').send_keys('50')

结果是2050

这似乎是 selenium 上较新版本的 chromedriver 的常见问题。 我发现了一个 hacky 解决方案,只需将一堆退格键发送到选定的 web 元素。

for i in range(100):
  WebElement.sendKeys(Keys.BACK_SPACE)

甚至可以做

for i in range(len(current_field_value)):
  WebElement.sendKeys(Keys.BACK_SPACE)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM