У меня есть этот код в jQuery:
$(iframe).find('input[type=text]').filter(':visible:first').val("abc");
Я попытался сделать это в Puppeteer следующим образом:
const iframe = await page.frames().find(f => f.name() === 'iframe');
var inputText = await iframe.$('input[type=text]').filter(':visible:first');
await inputText.focus();
await page.keyboard.type("abc");
Я получил следующую ошибку:
iframe.$(...).filter is not a function
Я также пробовал с iframe.$$, но получил те же результаты.
Обновлено:
Моя конечная цель - воспроизвести этот jQuery:
$(iframe).find('select').filter(':visible').eq(1);

$ на jQuery и $ на кукловоде не имеют отношения. Вам нужно внедрить jQuery и оценить скрипт на странице.
Чтобы внедрить jQuery из cdn,
await page.addScriptTag({url: 'https://code.jquery.com/jquery-3.4.1.min.js'});
Чтобы внедрить локальный jQuery,
await page.addScriptTag({path: require.resolve('jquery')});
И тогда ваш код обычно с page.evaluate,
await page.evaluate(()=>{
// get the body inside iframe
const iframe = $("YourSelector").contents().find("body");
// run your code
$(iframe).find('input[type=text]').filter(':visible:first').val("abc");
})