基于Selenium模块实现键盘操作
前言
在 Selenium 模块中,提供了一个 Keys 类,来处理键盘操作;
在 Selenium 模块中,使用 send_keys() 方法,来模拟键盘输入,
此篇文章主要介绍如何使用 Keys 类 和 send_keys() 方法 实现 模拟键盘操作,并以具体的示例进行展示。
正文
1、Keys类常用方法
Keys类键盘事件 | 实现功能 |
---|---|
Keys.BACK_SPACE | 删除键 |
Keys.SPACE | 空格键 |
Keys.TAB | Tab键 |
Keys.ESCAPE | 回退键 |
Keys.ENTER | 回车键 |
Keys.CONTROL,”a” | 组合键,Ctrl + A |
Keys.CONTROL,”x” | 组合键,Ctrl + X |
Keys.CONTROL,”v” | 组合键,Ctrl + V |
Keys.CONTROL,”c” | 组合键,Ctrl + C |
Keys.F1/F12 | F1/F12键 |
Keys.SHIFT | 大小写转换键 |
Keys.CONTROL | Control键 |
Keys.ALT | ALT键 |
Keys.PAGE_UP | 翻页键上 |
Keys.PAGE_DOWN | 翻页键下 |
Keys.END | 行尾键 |
Keys.HOME | 行首键 |
Keys.LEFT | 方向键左 |
Keys.UP | 方向键上 |
Keys.RIGHT | 方向键右 |
Keys.DOWN | 方向键下 |
Keys.INSERT | 插入键 |
Keys.NUMPAD0 ~ NUMPAD9 | 数字键1-9 |
2、键盘操作示例
2.1、需求分析
打开百度浏览器 - 输入python - Ctrl+a,全选 - Ctrl+x,剪切 - Ctrl+v,粘贴 - 按下回车键
2.2、完整代码
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
browser = webdriver.Chrome()
browser.get("http://baidu.com/")
inputBaidu = browser.find_element(By.ID, 'kw')
inputBaidu.send_keys("python")
inputBaidu.send_keys(Keys.SPACE) # 输入空格
time.sleep(1)
inputBaidu.send_keys(Keys.CONTROL, 'a') # Ctrl+a 模拟全选
time.sleep(1)
inputBaidu.send_keys(Keys.CONTROL, 'x') # Ctrl+x 模拟剪切
time.sleep(1)
inputBaidu.send_keys(Keys.CONTROL, 'v') # Ctrl+v 模拟粘贴
time.sleep(1)
inputBaidu.send_keys(Keys.ENTER) # 模拟回车
time.sleep(3)