Browsermob代理停止捕获网址更改?

时间:2016-05-14 02:50:15

标签: selenium-webdriver proxy webdriver browsermob browsermob-proxy

我正在使用browsermob代理来捕获webdrirver(主要是chrome)的流量。 以下是我遇到的问题:只要我使用单页一切正常,但是当URL更改时(由于导航到其他页面或重定向),代理不再捕获任何事件(我无法看到这些HAR文件中的事件)

以下是我开始代理的方式:

proxy.waitForQuiescence(10, 10, TimeUnit.SECONDS);
return proxy.getHar();

这就是我如何得到的:

{{1}}

我是否需要以某种方式处理URL更改时的情况或我在这里丢失smthn?

1 个答案:

答案 0 :(得分:0)

这就是我的工作方式!

BrowserMobProxyServer proxyBrowserMob = new BrowserMobProxyServer();
proxy.start();
Proxy seleniumProxy = ClientUtil.createSeleniumProxy(proxyBrowserMob)
    DesiredCapabilities caps = DesiredCapabilities.firefox();
 caps.setCapability("marionette", true);
    caps.setCapability(CapabilityType.PROXY, seleniumProxy);
RemoteWebDriver webDriver = new FirefoxDriver(caps);
proxyBrowserMob .enableHarCaptureTypes(CaptureType.REQUEST_CONTENT,CaptureType.REQUEST_HEADERS,CaptureType.REQUEST_COOKIES);
        proxyBrowserMob .newHar();

为了检索HAR文件,我迭代一个HarEntry来获取HAR。

List<HarEntry> entries = browserMobProxy.getHar().getLog().getEntries();
    for (HarEntry entry : entries) {
   // get HarRequest
   /get HarResponse
     }