BrowserMob无法与Selenium Webdriver

时间:2017-03-03 14:39:28

标签: c# selenium-webdriver browsermob

我正在使用BrowserMob从Chrome浏览器获取捕获流量。我用.bat文件下载BrowserMob应用程序。我也和Selenium Webdriver一起工作。我将.cs文件从Github添加到浏览器项目中。我想要的是获得网络流量。

我的代码是:

using (IWebDriver driver = new ChromeDriver())
            {



var server = new Server(@"C:\Users\Barp\Downloads\browsermob-proxy-2.1.4-bin\browsermob-proxy-2.1.4\bin\browsermob-proxy.bat");
server.Start();
Thread.Sleep(1000);
Client client = server.CreateProxy();

 client.NewHar("google");
 var chromeOptions = new ChromeOptions();
 var seleniumProxy = new Proxy1 { HttpProxy = client.SeleniumProxy };
 chromeOptions.Proxy = seleniumProxy;
 Thread.Sleep(1500);
 var dr = new ChromeDriver(chromeOptions);
 dr.Navigate().GoToUrl("http://www.google.co.uk");
 var harData = client.GetHar();



HarResult harDat = client.GetHar();

WebdriverTestGUI2.BrowserMob.Log log = harDat.Log;
WebdriverTestGUI2.BrowserMob.Entry[] entries = log.Entries;
foreach (var entry in entries)
{
      WebdriverTestGUI2.BrowserMob.Request request = entry.Request;
      var url = request.Url;
  var time = entry.Time;
  Console.WriteLine("Url: " + url + " - Time: " + time);
                }



      driver.Quit();
      client.Close();
      server.Stop()
}
}

您的.bat文件或其他BrowserMob文件中有任何更改吗?

CMD正在打开,Start也运行良好,但我有错误出现在cmd:

错误FileManager(bmp.log)java.io.FileNotFound异常bmp.log(访问被拒绝)

-Error无法将字段注入到插件类型类org.apache.logging.log4j.core的构建器类中,无法为bmp.log创建管理器

-Error无法在类类org.apache.logging.log4j.core.appender.FileAppender中为元素文件java.lang.IllegalStateException调用工厂方法:找不到工厂方法

-Error NULL对象返回appenders中的文件

-Error无法找到appender" file"用于记录器配置。

1 个答案:

答案 0 :(得分:0)

嘿,我在这里有同样的问题

我更改了.Start中的Server.cs流程,就这样开始了:

     _serverProcess = new Process
        {
            StartInfo = { FileName = _path,
                           UseShellExecute = true,
                           Verb = "runas"
                         }
        }

UseShellExecuteVerb是关键所在,我还添加了app.manifest

requestedExecutionLevel  level="requireAdministrator" uiAccess="false"