如何以编程方式监控 Web 浏览器中的 JavaScript 执行?
Posted
技术标签:
【中文标题】如何以编程方式监控 Web 浏览器中的 JavaScript 执行?【英文标题】:How would one monitor JavaScript execution in a web browser programmatically? 【发布时间】:2014-08-27 19:23:46 【问题描述】:我希望能够知道任意 javascript 何时在 Web 浏览器中成功执行命令。媒介无关紧要,它可以是日志、堆栈跟踪、事件信号,它必须是可以通过编程分析的东西。
我已经考虑这个问题有一段时间了,但我还没有想出一个合适的解决方案。不过,我不是 JavaScript 专家,所以我想知道您有什么想法?
您可能想知道为什么,这只是我非常感兴趣的事情。
感谢任何输入。你能帮帮我吗?
编辑:我已经研究过使用 Firebug 之类的东西来监视 JavaScript 函数,但是我无法确定 Firebug 是否可以在模拟的 Web 浏览器上以编程方式运行(例如 ASP.NET 中的 Web 浏览器控件,它是我目前正在使用的。)有人知道它是否可以吗?
【问题讨论】:
【参考方案1】:你可以使用Firebug.的profiler
转到控制台选项卡并单击配置文件。探查器启动并且所有 javascript 操作都被“记录”,直到您再次单击 Profile。然后你会得到在这个时间间隔内执行的 javascript 函数的列表。
大多数现代浏览器的控制台都有类似的功能。
来源:See/Log which javascript function is being executed by the browser
【讨论】:
啊,是的,我实际上已经检查了 Firebug。但是(我很抱歉没有在上面指定这一点,)我目前在 ASP.NET 中使用模拟的 Web 浏览器,因为我需要自动化这个过程。例如,您知道是否可以在 Web 浏览器控件上使用 Firebug?当我检查它时,我认为它不会。 感谢您的投票。我正在调查你的确切问题。我会尽快更新。 不幸的是,我认为控制台不会在这里帮助我,因为我需要连接到 JavaScript 引擎。不过感谢您的帮助,不胜感激。【参考方案2】:firefox 浏览器可以使用 selenium web 驱动程序在 asp .net 中使用,它还提供从网页访问所有详细信息的能力。查看文档并下载 api 代码并将其集成到您的项目中,使用它的帮助很容易集成。 http://docs.seleniumhq.org/projects/webdriver/
【讨论】:
哦,有趣。我马上去看看,谢谢你的意见 它可能无法完成您正在寻找的实际任务,但会像 curl 一样帮助您。以上是关于如何以编程方式监控 Web 浏览器中的 JavaScript 执行?的主要内容,如果未能解决你的问题,请参考以下文章
C#:如何以编程方式检查 Web 服务是不是已启动并正在运行?