我希望有人可以指导我正确的方向,我正试图通过Puppeteer检索页面上的对象。
如果我在Web控制台中键入以下内容,则可以:
的eval( ‘__ object.client [0]’);这个 …
我认为你必须记住一些概念:
exposeFunction 不会执行该功能。它将注册该功能,然后您可以调用 findPath(foo) 的 在浏览器上下文中 强> 。 您在公开函数中运行的代码 的 将在您的应用程序的上下文中运行 强> 。所以 eval 不会在那里工作。
exposeFunction
findPath(foo)
eval
evaluate 应该为你做的工作:
evaluate
console.log(await page.evaluate(() => { return eval('document.title'); }));
同 evaluate 你必须记住,代码将在浏览器上下文中执行。因此,您不会在应用程序端读取任何控制台日志(除非您收听日志事件)。