Javascript 使用Puppeter获取控制台结果(对象)

Javascript 使用Puppeter获取控制台结果(对象),javascript,node.js,web-scraping,automation,puppeteer,Javascript,Node.js,Web Scraping,Automation,Puppeteer,我在从DevLoper工具的控制台日志中已经存在的站点获取数据时遇到问题。 我对Puppeter是新手,所以我尝试获取所有这些控制台日志结果,但它们都有字符串类型。 你们能帮我找到一种方法来获取真正的对象或者一种方法来解析它并使用它吗, 谢谢我们使用它来捕获控制台事件并登录节点: page.on('console', async msg => { const args = msg.args(); const vals = []; for (let

我在从DevLoper工具的控制台日志中已经存在的站点获取数据时遇到问题。 我对Puppeter是新手,所以我尝试获取所有这些控制台日志结果,但它们都有字符串类型。 你们能帮我找到一种方法来获取真正的对象或者一种方法来解析它并使用它吗,
谢谢

我们使用它来捕获控制台事件并登录节点:

    page.on('console', async msg => {
      const args = msg.args();
      const vals = [];
      for (let i = 0; i < args.length; i++) {
        vals.push(await args[i].jsonValue());
      }
      console.log(vals.map(v => typeof v === 'object' ? JSON.stringify(v, null, 2) : v).join('\t'));
    });
page.on('console',异步消息=>{
常量args=msg.args();
常数VAL=[];
for(设i=0;itypeof v=='object'?JSON.stringify(v,null,2):v).join('\t');
});

它检查正在记录的消息的类型,并运行
JSON。如果是对象,则stringify

请添加有关您需要获取的内容的更多信息,并提供示例。目前还不清楚你的意思。是否要获取站点发送到控制台.log的数据?是否要获取页面上存在的一些全局窗口对象,然后您可以
console.log
并查看它们?谢谢,是的,我希望获取站点以JSON格式发送到console.log的数据,以便使用它捕获远程站点的所有console.log语句尝试以下解决方案: