Невозможно щелкнуть элемент с Кукольником - PullRequest
0 голосов
/ 02 февраля 2020

URL: https://auto.ru/catalog/cars/all/?page_num=1

JS код:

const puppeteer = require('puppeteer');

(async () => {
    try {
        const browser = await puppeteer.launch({args: ['--no-sandbox']});
        const page = await browser.newPage();
        await page.goto('https://auto.ru/catalog/cars/all/?page_num=1', {waitUntil: 'networkidle2'});

        await page.click('#confirm-button');

        await page.waitFor(1000);

        await page.screenshot({path: './data/example.png'});

        await browser.close();

    } catch (err) {
        console.error(err);
    }
})();

Когда я запускаю этот код, нет ошибок, но также нет щелчка, Я остаюсь на той же странице.

enter image description here Как я могу нажать левую синюю кнопку с помощью Puppeteer (открыть URL в режиме инкогнито, чтобы увидеть кнопки)?

1 Ответ

1 голос
/ 03 февраля 2020

Работает нормально. Вам просто нужно дождаться завершения навигации, прежде чем делать снимок. Кроме того, всегда убедитесь, что элемент появляется, прежде чем пытаться щелкнуть по нему:

await page.waitForSelector("#confirm-button");
await Promise.all([
    page.click('#confirm-button'), 
    page.waitForNavigation()
]);
await page.screenshot({path: './data/example.png'}); 
...