清空默认值直接用clear()清空不了,只能输入之后再使用clear()才可以清空。
解决方案一:
通过键盘操作全选,然后直接send_keys(), 不用clear()
#导入键盘包
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get("https://www.baidu.cn")
driver = driver.find_element_by_xpath('xpath路径')
driver.send_keys(Keys.CONTROL, 'a')
driver.send_keys('666')
解决方案二:
先双击,后直接send_keys(), 不用clear(),但是有缺陷:双击不一定能选中所有内容
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Chrome()
driver.get("https://www.baidu.cn")
element = driver.find_element_by_xpath('xpath路径')
ActionChains(driver).double_click(element).perform()
element.send_keys('666')
- from selenium.webdriver import ActionChains
导入提供鼠标操作的 ActionChains 类。
- ActionChains(driver)
调用 ActionChains()类, 将浏览器驱动 driver 作为参数传入。
- double_click(element)
double_click()方法用于模拟鼠标左键双击操作, 在调用时需要指定元素定位。
- perform()
执行所有 ActionChains 中存储的行为, 可以理解成是对整个操作的提交动作。