Puppeteer系列
2、Puppeteer筆記(二):Puppeteer安裝及實例Demo
3、Puppeteer筆記(三):Puppeteer獲取元素及元素屬性
4、Puppeteer筆記(四):Puppeteer模擬鍵盤
5、Puppeteer筆記(五):Puppeteer文件上傳
6、Puppeteer筆記(六):Puppeteer切換frame操作
7、Puppeteer筆記(七):Puppeteer切換瀏覽器TAB頁
8、Puppeteer筆記(八):Puppeteer執行自定義Javascript方法
一、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();