С помощью инструмента разработчика chrome test puppeteer я хочу установить и использовать внешнюю функцию
const puppeteer = require('puppeteer');
async function setSelectVal(page, sel, val) {
page.evaluate((data) => {
return document.querySelector(data.sel).value = data.val
}, {sel, val})
}
(async () => {
const browser = await puppeteer.launch({headless: false});
const page = await browser.newPage();
await page.goto('url', {waitUntil: 'load'});
const inputLogin = await page.$('input[name=login]');
await page.focus('input[name=login]');
await page.type('login', {delay: 100});
const inputPassord = await page.$('input[name=password]');
await inputPassord.click();
await page.type('pass', {delay: 100});
const inputValidate = await page.$('input[name=valid]');
await inputValidate.click();
await page.waitForSelector('td.newpageclass');
await setSelectVal(page, 'select[name=targetname]', 'targetvalue')
})();
но это вызывает ошибку:
(узел: 16312) UnhandledPromiseRejectionWarning: отклонение необработанного обещания (идентификатор отклонения: 1): ошибка: ошибка протокола (Runtime.evaluate): цель закрыта. (узел: 16312) [DEP0018] DeprecationWarning: необработанные отклонения обещаний устарели. В будущем необработанные отклонения обещаний завершат процесс Node.js с ненулевым кодом выхода.
Ты знаешь, как мне поступить?