Nic*_*ing 11 python selenium selenium-webdriver
如何使用Selenium Web测试仪将Keys.DELETE击键发送到文本字段?我正在尝试模拟用户键入字段,然后删除他们键入的内容以测试交互式自动提供功能.它应该将列表过滤到以查询开头的项目,然后在删除查询时再次显示所有可能的建议.发送.clear()的Unfortunatley无法再次取消筛选列表.send_keys('\ 127')也没有.
def get_suggestions():
driver.get('https://www.example.com/')
driver.find_element_by_css_selector('#searchQuery').click()
driver.find_element_by_css_selector('#searchQuery').send_keys('a')
sleep(0.5)
driver.find_element_by_css_selector('#searchQuery').send_keys(Keys.DELETE)
sleep(0.5)
for suggestion in driver.find_elements_by_css_selector('#search-form #suggestions'):
yield suggestion
Run Code Online (Sandbox Code Playgroud)
如何模拟用户按下键盘上的删除按钮?
ham*_*yad 15
您可以使用Ctr+a突出显示文本并通过BACKSPACE以下方式将其删除 :
from selenium.webdriver.common.keys import Keys
element.send_keys(Keys.CONTROL, 'a')
element.send_keys(Keys.BACKSPACE)
Run Code Online (Sandbox Code Playgroud)
在python中,如果element.clear()(不会在react中触发onChange)不起作用,请尝试此操作。
def clear_text(element):
length = len(element.get_attribute('value'))
element.send_keys(length * Keys.BACKSPACE)
Run Code Online (Sandbox Code Playgroud)
为什么没人说需要进口?
from selenium.webdriver.common.keys import Keys
Run Code Online (Sandbox Code Playgroud)
另外,如果您想删除整个文本,您可以在单个函数中模仿ctrl + a& ,如下所示:backspace
def clear_entire_text(element):
element.send_keys(Keys.CONTROL + 'a', Keys.BACKSPACE)
Run Code Online (Sandbox Code Playgroud)