кукловод: не могу войти и перебрать URL

type='hidden'

Когда мы сталкиваемся с любым таким случаем, прежде всего нам нужно попробовать любое действие, которое не вносит никаких изменений на эту страницу, например, перетаскивание и т. д., а затем переключение кадров.

Попробуйте getText(), если это не сработает, попробуйте приведенное выше в качестве второго варианта.

0
задан Siddharth Sonone 26 February 2019 в 13:06
поделиться

1 ответ

В этом примере есть несколько проблем.

  1. Вы должны ожидать вызова функции getTitle, вы ожидаете внутри функции, но вы должны также ожидать вызова функции.

  2. Вы должны окружить getTitle блоком try и catch и проверить внутри функции, есть ли возвращаемый заголовок (например, заголовок для Google равен нулю)

    const puppeteer = require("puppeteer");
    
    list = [
        "https://www.facebook.com/",
        "https://www.google.com/",
        "https://www.zocdoc.com/"
    ];
    
    const getTitle = async (p, url) => {
        try{
            await p.goto(url);
            const title = await p.title();
            if(title){
                return title
            }
        }
        catch(e) {
            throw(e)
            console.log(e)
        }
    };
    
    (async () => {
        const browser = await puppeteer.launch();
        const page = await browser.newPage();
        console.log(this)
        for (var url of list) {
            try{
                console.log(await  getTitle(page, url))
            }
            catch(e ){
                console.log('No title')
            }
        }
        await browser.close();
    })();
    
0
ответ дан Pjotr Raskolnikov 26 February 2019 в 13:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: