1、Selenium中send_keys除了可以模拟键盘输入之外,还有些时候需要操作键盘上的按键,甚至是组合键,比如CTRL+A,CTRL+C等,
所以我们需要代码操作键盘。使用的是send_keys里的Keys的类。
from selenium.webdriver.common.keys import Keys
Keys()类提供了键盘上所有按键的方法,常用的键盘按键操作如下
"""
send_keys(Keys.BACK_SPACE) #删除键(BackSpace)
send_keys(Keys.SPACE) #空格键(Space)
send_keys(Keys.TAB) #制表键(Tab)
send_keys(Keys.ESCAPE) #回退键(Esc)
send_keys(Keys.ENTER) #回车键(Enter)
send_keys(Keys.CONTROL,‘a’) #全选(Ctrl+A)
send_keys(Keys.CONTROL,‘c’) #复制(Ctrl+C)
send_keys(Keys.CONTROL,‘x’) #剪切(Ctrl+X)
send_keys(Keys.CONTROL,‘v’) #粘贴(Ctrl+V)
send_keys(Keys.F1) #键盘 F1
...
send_keys(Keys.F12) #键盘 F12"""
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support.ui import Select
from selenium.webdriver.common.keys import Keys
from time import sleep
from selenium import webdriver
from selenium.webdriver.common.by import Bydriver = webdriver.Chrome()
driver.get('https://www.baidu.com/')ele = driver.find_element(By.ID,'kw')
ele.send_keys("柠檬班")
sleep(2)# 回删一个字- backspace
ele.send_keys(Keys.BACKSPACE)
sleep(2)
# 组合键操作
# 全选-ctrl+A
ele.send_keys(Keys.CONTROL,"a")
sleep(2)
ele.send_keys(Keys.CONTROL,"c")
sleep(2)
ele.send_keys(Keys.CONTROL,"v")
sleep(2)
ele.send_keys(Keys.CONTROL,"v")
sleep(2)
# 回车查询
ele.send_keys(Keys.ENTER)sleep(4)
driver.quit()