Я использую Puppeteer для взаимодействия с веб-сайтом с помощью функции оценки (), чтобы манипулировать лицевой страницей (т. Е. Для щелчка по определенным элементам и т. Д. c ...), щелчок по ссылке работает нормально, но я не могу вернуть Источник страницы после нажатия с помощью оценки.
Я воссоздал ошибку в этом упрощенном скрипте, ниже он загружает google.com, нажимает кнопку «Мне повезет» и затем должен вернуть источник страницы загруженной страницы:
const puppeteer = require('puppeteer');
async function main() {
const browser = await puppeteer.launch({
headless: false,
args: ['--no-sandbox']
});
const page = await browser.newPage();
await page.goto('https://www.google.com/', {waitUntil: 'networkidle2'});
response = await page.evaluate(() => {
document.getElementsByClassName('RNmpXc')[1].click()
});
await page.waitForNavigation({waitUntil: 'load'});
console.log(response.text());
}
main();
Я получаю следующую ошибку:
TypeError: Cannot read property 'text' of undefined
ОБНОВЛЕНИЕ Новый код, следующий за предложением использовать page.content ()
const puppeteer = require('puppeteer');
async function main() {
const browser = await puppeteer.launch({
headless: false,
args: ['--no-sandbox']
});
const page = await browser.newPage();
await page.goto('https://www.google.com/', {waitUntil: 'networkidle2'});
await page.evaluate(() => {
document.getElementsByClassName('RNmpXc')[1].click()
});
const source = await page.content()
console.log(source);
}
main();
Теперь я получаю следующую ошибку:
Error: Execution context was destroyed, most likely because of a navigation.
Мой вопрос таков: как я могу вернуть источник страницы с помощью метода .text () после манипулирования веб-страницей с помощью методаvalu ()?
Все предложения / идеи / предложения будут Буду очень признателен, спасибо.