简介
本文主要简介如何使用java代码利用Selenium 控制浏览器中需要用到的键盘操作。
键盘控制
webdriver 中 Keys 类几乎提供了键盘上的所有按键方法,我们可以使用 send_keys + Keys 实现输出键盘上的组合按键如 “Ctrl + C”、“Ctrl + V” 等。
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;/*** @author Lenovo*/
public class SeleniumDemo {private final static String webDriver = "webdriver.chrome.driver";private final static String webDriverPath ="E:\\chromedriver\\chromedriver.exe";public static void main(String[] args) throws InterruptedException {System.setProperty(webDriver, webDriverPath);WebDriver driver= new ChromeDriver();//有道翻译页面driver.get("https://fanyi.youdao.com/index.html#/");WebElement element=driver.findElement(By.id("js_fanyi_input"));//输入账户名element.sendKeys("admin");// 模拟回车键进行跳转(输入内容后)element.sendKeys(Keys.ENTER);//Ctrl + A 全选输入框中内容element.sendKeys(Keys.CONTROL, "A");//Ctrl + C 复制输入框中内容element.sendKeys(Keys.CONTROL, "C");//Ctrl + V 粘贴输入框中内容(第一粘贴会把原来的内容替换)element.sendKeys(Keys.CONTROL, "V");//Ctrl + V 粘贴输入框中内容element.sendKeys(Keys.CONTROL, "V");//Ctrl + V 粘贴输入框中内容element.sendKeys(Keys.CONTROL, "V");}
}
其他常见键盘操作:
操作 | 描述 |
Keys.F1 | F1键 |
Keys.SPACE | 空格 |
Keys.TAB | Tab键 |
Keys.ESCAPE | ESC键 |
Keys.ALT | Alt键 |
Keys.SHIFT | Shift键 |
Keys.ARROW_DOWN | 向下箭头 |
Keys.ARROW_LEFT | 向左箭头 |
Keys.ARROW_RIGHT | 向右箭头 |
Keys.ARROW_UP | 向上箭头 |
Keys.BACK_SPACE | Backspace建 |
组合键使用
//组合键element.sendKeys(Keys.CONTROL,Keys.SHIFT, "A");
高频使用
//输入文本
element.sendKeys("洛阳泰山");
补充知识
键盘操作除了使用Selenium 控制键盘外还可以使用 java robot (java.awt包下)的控制键盘结合使用。