Javascript 木偶演员刮;向搜索栏添加文本返回错误

Javascript 木偶演员刮;向搜索栏添加文本返回错误,javascript,puppeteer,Javascript,Puppeteer,我正在学习使用木偶演员,但我遇到了麻烦。我正在尝试创建一个程序,它接收一个日期,并找到一个生日在该日期的名人。我有以下代码: const puppeteer = require('puppeteer'); try { (async () => { console.log('here'); const browser = await puppeteer.launch(); const page = await browser.n

我正在学习使用木偶演员,但我遇到了麻烦。我正在尝试创建一个程序,它接收一个日期,并找到一个生日在该日期的名人。我有以下代码:

    const puppeteer = require('puppeteer');
try {
    (async () => {
        console.log('here');
        const browser = await puppeteer.launch();
        const page = await browser.newPage();
        await page.goto('https://www.famousbirthdays.com/');
        console.log('me');
        await page.type(document.querySelector('input'), '11-16-1952');
        console.log('you clicked');
        await page.click(document.querySelector('button'));
        console.log('Here');
        await page.waitForSelector(
            document.querySelector('div[class="list_page"]')
        );

        let data = await page.evaluate(() => {
            let name = document.querySelector('div[class="name"').textContent;

            return { name };
        });

        console.log(data);

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

我不明白为什么我在page.type行出现错误?我收到一个错误,无法访问“你点击”的日志。如果我正确阅读了文档,.click可以在其中输入选择器和文本,所以我很确定我使用的是正确的。我在浏览器控制台和文档上进行了检查。querySelector(“输入”)确实会调出我想要的元素(搜索栏)。任何建议都将不胜感激。谢谢查看。

您的问题是
文档
仅在浏览器上下文中可用(例如在
页面内。评估
)。意思是
等待页面。键入(文档…
@ippi谢谢!!我现在知道了,我把它一直工作到页面。waitForSelector!现在它永远留在那里哈哈。我会看看是否能找到发生的事情。再次感谢!