@SubUser
Когда уже на завод

Ошибка типа: Cannot read property 'src' of null?

Захожу на сайт используя "puppetter", хочу спарсить первую картинку(url) в ленте но только такая ошибка Cannot read property 'src' of null. Как я понял из названия ошибки src пустой но я делал скрин и там картинка прогрузилась. Код:

export async function scrapeUrl () {
    const browser = await puppeteer.launch({
        headless: false,
        devtools: false,
        // args: ["--start-maximized"]
    });
    let page =  await browser.newPage();
    const pageURL = 'https://9gag.com/funny/fresh';

    try {
        await page.goto(pageURL, { waitUntil: 'domcontentloaded' });

    } catch (error) {
        console.log(`I can't open: ${pageURL} due to this mistake: ${error}`);
    }
    await page.waitFor(2000);
    await page.screenshot({path: 'buddy-screenshot.png'});
    const url = await page.$("div.post-container picture img");

    browser.close();

    return url.src;
};


А ну и еще при headless: true вилазит капча по скрину, кто что предпринимает?
5fbd7c271e598935298932.png
  • Вопрос задан
  • 80 просмотров
Решения вопроса 1
lastuniverse
@lastuniverse
Всегда вокруг да около IT тем
вот эта строка
const url = await page.$("div.post-container picture img");


не находит элемента, удовлетворяющего div.post-container picture img
и возвращает значение null. В результате url = null
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Яндекс Москва
от 100 000 до 300 000 ₽
Яндекс Санкт-Петербург
от 100 000 до 300 000 ₽
от 120 000 до 160 000 ₽