基本上,我需要的是一种方法来自动化以下操作的结果:
通常,建议的解决方案涉及使用PhantomJS、浏览器-代理或pcap2har;这些解决方案不适合我的情况,因为我需要处理SPDY流量。
我试着深入到Google Chrome扩展API中去,实际上我成功地实现了一些任务的自动化,但是对于HAR文件的生成仍然没有什么进展。现在这种方法特别有希望,但我仍然不知道如何使用它。
换句话说,我需要谷歌人提供的类似本实验的东西。请注意以下事项:
我们将Chrome的远程调试接口与一个自定义客户端一起使用,该客户端在电话上启动浏览器,清除其缓存和其他状态,启动网页加载,并接收Chrome开发工具消息以确定页面加载时间和其他性能指标。
有什么想法吗?
解决方案
出于好奇,我最终得到了一个自动化此类测试的Node.js模块:铬-哈-捕获。这也让我有机会深入研究远程调试协议,并为通用Chrome自动化编写一个较低级别的Node.js界面:铬-远程接口。
发布于 2012-11-24 02:56:23
简单的回答是,没有办法直接得到你想要的数据。getHAR方法只适用于扩展DevTools本身的扩展。好消息是,您可以自己构建HAR文件,而不需要太多麻烦--这正是phantom.js是做什么的。
首先,我有一篇关于样例Ruby代码的文章,您应该从步骤1-4:http://www.igvita.com/2012/04/09/driving-google-chrome-via-websocket-api/开始。
发布于 2018-10-23 08:49:00
到目前为止,有一个浏览器插件可以这样做:https://github.com/devtools-html/har-export-trigger
它使用WebExtensions DevTools API,我让它与DevTools和Chrome一起工作。
参见我在这里的Chrome代码:chrome.py#L175
在Chrome中自动安装插件比在火狐中要复杂一些,但是是可行的--我在本地提取插件存档,然后在chrome_prefs.json中链接到它(参见相同的存储库)。
发布于 2021-08-03 19:54:49
不确定是否有用,哈尔记录仪使用chrome调试协议记录HAR并生成har文件(不打开devtools)。如果您想要一个变体,您可以分叉并对其进行更改。
https://stackoverflow.com/questions/13537533
复制相似问题