Selenium在mac系统的Chrome里clear()无效的一种解决办法

发现clea()无法清除input里的内容,网上的解决方法有几种:
1.用ActionChains模拟键盘输入Ctrl+A全选,然后再Delete. 》我用的mac,貌似模拟Command键无效....
2.另外一种方式是模拟鼠标双击全选input,不过只对于单个单词或中文句子有用,英文句子因为空格的存在只能选择到单词。》鼠标快速点击3次可以全选input,但是ActionChains无法实现...
3.另一种方式是获取input的文字长度,然后按相应次数的删除》不是很优雅,而且我居然也无法成功按多次backspace
4.最终我使用JS达成了目的:
def inputText(self,text):
#定义一个文本输入的函数
actions = ActionChains(driver)
actions.move_to_element(self)
actions.click(self)
actions.perform()
driver.execute_script("arguments[0].value = '';",self)#value替换为空值
self.send_keys(text)

你可能感兴趣的:(Selenium在mac系统的Chrome里clear()无效的一种解决办法)