在Chrome中,如何将javascript控制台输出获取到stdout / stderr

Ant*_*ony 2 javascript google-chrome

我使用的是Google Chrome浏览器,并且有一个页面可将一些信息打印到Javascript控制台-我想将此内容通过管道传递给脚本。

我发现了如何在OS X上显示Chrome的stdout的方法-通过在终端上运行以下命令(需要新的用户配置文件来确保该命令产生一个新的应用程序,否则我们将打开现有的应用程序并没有任何输出)。

但是,我要打印到终端的所有内容都是内部Chrome信息。

有没有一种方法可以将所有JS控制台输出打印到stdout / stderr,以便可以将以下命令的输出传递到脚本中?

TIA!

/ Applications / Google \ Chrome.app/Contents/MacOS/Google \ Chrome --user-data-dir = temp-dir

Tia*_*bre 5

  • 使用以下标志从命令行启用日志记录

    --enable-logging --v=1

    这会记录Chrome内部执行的所有操作,但同时也会记录所有console.log()消息。日志文件被调用chrome_debug.log并位于中User Data Directory

  • 不太正确,但是您的提示使我到了那里,所以谢谢!如果启用日志记录并强制使用临时用户目录(如上所述,我需要在OS X上执行此操作),那么您提到的调试文件中将看不到输出。我直觉地去寻找,确实有一个文件“ temp-dir / chrome_debug.log”,其中包含我想要的输出:)所以答案是“ --enable-logging --v = 1 --user-data”。 -dir = temp-dir`以获得我在OS X上需要的东西。 (3认同)
  • 嘿,你知道 Firefox 会怎样吗? (3认同)
  • --enable-logging = stderr也是可能的 (2认同)
  • 在这种情况下,“chrome_debug.log”将充满控制台上未出现的数据,这使得无法解析。 (2认同)