Puppeteer实现同时按shift和字母input中录入大写字母

网页中对于数据的操作是必不可少的流程,如输入字母、数字、汉字等。通过数据录入的交互,也使得网站更加灵活。

那么基于Puppeteer如何实现对网页内的input框录入大写字母呢?

本文就该问题给出详细代码流程:

const puppeteer = require('puppeteer');
function delay(time) {
return new Promise(function(resolve) {
setTimeout(resolve, time)
});
}
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://www.baidu.com/?tn=62095104_19_oem_dg');
await page.focus('#kw');
//录入大写字母——开始
await page.keyboard.down('Shift');
await page.keyboard.press('KeyB');
await page.keyboard.up('Shift');
//录入大写字母——结束
await delay(2000);
let resultText = await page.$eval('#kw', ele=>ele.value);
console.log("result Text = \n", resultText);
await browser.close();
})();

关键点解析:

    page.keyboard.down键盘按下事件。

     page.keyboard.press录入字母,Key固定。大写的A可以为26个英文字母任意一个。

     page.keyboard.up键盘松下事件。

这里用到了自定义delay()方法,延时后获取设置的值。

六月初字帖坊小程序 你想要的字帖模板及工具,这里都有!