Javascript page.evaluate使用谷歌云功能进行抓取时不返回响应? 木偶演员版本:9.0.0 平台/操作系统版本:谷歌云功能 Node.js版本:14

Javascript page.evaluate使用谷歌云功能进行抓取时不返回响应? 木偶演员版本:9.0.0 平台/操作系统版本:谷歌云功能 Node.js版本:14,javascript,node.js,web-scraping,google-cloud-functions,puppeteer,Javascript,Node.js,Web Scraping,Google Cloud Functions,Puppeteer,IDK why butpage.evaluate()控制台不记录任何内容,也不向节点环境返回任何内容。三天以来,我一直在尝试解决堆栈溢出和GitHub问题的不同解决方案,但直到现在都没有成功 当从页面返回时,我也尝试了promise.resolve()。evaluate,但这也不起作用 当您运行page.evaluate()时,您实际上是在浏览器上下文中操作,而不是在节点中操作。因此,console.log输出到浏览器上下文,您将不会在节点控制台中看到任何内容 以下是将浏览器上下文输出到节点控

IDK why but
page.evaluate()
控制台不记录任何内容,也不向节点环境返回任何内容。三天以来,我一直在尝试解决堆栈溢出和GitHub问题的不同解决方案,但直到现在都没有成功

  • 当从
    页面返回时,我也尝试了
    promise.resolve()
    。evaluate
    ,但这也不起作用

当您运行
page.evaluate()
时,您实际上是在浏览器上下文中操作,而不是在节点中操作。因此,
console.log
输出到浏览器上下文,您将不会在节点控制台中看到任何内容

以下是将浏览器上下文输出到节点控制台的解决方法:

const page = await browser.newPage();

page.on('console', consoleObj => console.log(consoleObj.text()));

参考资料:

看起来您有一个HTTP函数,如果是这样,您需要确保它遵循以下步骤。此外,不能在函数内部创建函数,它们必须单独创建。修复此问题后,此功能可能会工作。
const page = await browser.newPage();

page.on('console', consoleObj => console.log(consoleObj.text()));