一、Puppeteer模拟键盘
1、keyboard.down(key[,options])
2、keyboard.press(key[,options])
3、keyboard.type(text,options)
4、keyboard.up(key])
二、上手实例Demo
Puppeteer模拟键盘,功能测试:打开百度首页,输入"hello world!",删除world,并模拟键盘按下”A"。
1 const puppeteer = require('puppeteer');
2 async function keyboard() {
3 //创建一个Browser浏览器实例,并设置相关参数
4 const browser = await puppeteer.launch({
5 headless: false,
6 defaultViewport: null,
7 args: ['--start-maximized'],
8 ignoreDefaultArgs: ['--enable-automation']
9 });
10 //创建一个Page实例
11 const page = await browser.newPage();
12 //打开百度首页
13 await page.goto("https://www.baidu.com");
14 await page.$('#kw');
15 //键盘输入'Hello World!'
16 await page.keyboard.type('Hello World!');
17 await page.waitFor(2000);
18 //键盘按下鼠标左键
19 await page.keyboard.press('ArrowLeft');
20 //按住键盘shift
21 await page.keyboard.down('Shift');
22 for (let i = 0; i < ' World'.length; i++)
23 await page.keyboard.press('ArrowLeft');
24 await page.keyboard.up('Shift');
25 //键盘按住回车键盘
26 await page.keyboard.press('Backspace');
27 //紧接着模拟键盘按下大写的"A",
28 await page.keyboard.down('Shift');
29 await page.keyboard.press('KeyA');
30 await page.keyboard.up('Shift');
31 //结果字符串最终为 'HelloA!'
32 await page.waitFor(3000);
33 //截图并保存至keyboad.png
34 await page.screenshot({
35 path: 'keyboard.png'
36 });
37 await browser.close();
38 }
39 keyboard();
来源:oschina
链接:https://my.oschina.net/u/4285472/blog/4286980