如何使用 Python 中的 Selenium 向文本字段发送 DELETE 键?
seleniumautomation testingtesting tools
我们可以使用 Python 中的 Selenium webdriver 向文本字段发送 DELETE 键。首先,我们需要借助 xpath、css、id 等定位器来识别文本字段。
我们可以使用 send_keys 方法在文本字段中输入文本。要输入的值将作为参数传递给该方法。要删除某个按键,我们可以将 Keys.BACKSPACE 作为参数传递给 send_keys 方法。
语法
l = driver.find_element_by_id("gsc−i−id1")
l.send_keys("Sel")
l.send_keys(Keys.BACKSPACE)
要同时删除所有输入的按键,我们必须将 CTRL+A 和 BACKSPACE 作为参数传递给 send_keys 方法。
语法
l = driver.find_element_by_id("gsc−i−id1")
l.send_keys("Sel")
l.send_keys(Keys.CONTROL + 'a', Keys.BACKSPACE)
另外,要使用 Keys 类,我们必须在代码中添加 import 语句 from selenium.webdriver.common.keys import Keys。
示例
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
#set geckodriver.exe path
driver = webdriver.Firefox(executable_path="C:\geckodriver.exe")
driver.implicitly_wait(0.5)
driver.get("https://www.tutorialspoint.com/about/about_careers.htm")
#识别元素并输入文本
l = driver.find_element_by_id("gsc−i−id1")
l.send_keys("Sel")
#删除一个键
l.send_keys(Keys.BACKSPACE)
print("删除单个键后的值")
print(l.get_attribute("value"))
#等待一段时间
time.sleep(0.8)
#一次性删除所有键
l.send_keys(Keys.CONTROL + 'a', Keys.BACKSPACE)
print("删除整个键后的值")
print(l.get_attribute('value'))
#关闭驱动程序会话
driver.quit()
输出


