【发布时间】:2021-06-02 12:10:57
【问题描述】:
我正在尝试使用 Puppeteer 从该站点 https://chat.kuki.ai/ 抓取网络响应。我试过使用page.$eval 和page.$$eval。我也试过这个,https://www.javaer101.com/en/article/17934751.html
和,
Puppeteer page.evaluate querySelectorAll return empty objects
和,
https://github.com/puppeteer/puppeteer/issues/489。
每次,我都会得到一个 undefined 对象或空数组。
我当前的代码是:
const botResponses = await page.evaluate((sel) => {
let elements = Array.from(document.querySelectorAll(sel));
let responses = elements.map(element => {
return element.innerText;
})
return responses;
}, ".pb-chat-bubble pb-chat-bubble__bot");
代码返回一个空列表。代码中的选择器是有效的选择器,您可以在网站上查看以确认。任何帮助表示赞赏!
【问题讨论】:
-
请显示您的可运行minimal reproducible example。在调用
page.evaluate之前,您是否正在等待选择器在前一行可用?顺便说一句,page.$$evalis a shorthand for this.
标签: javascript node.js puppeteer webautomation