BrowserMob无法使用Selenium Webdriver
问题描述:
我正在使用BrowserMob从Chrome浏览器捕获流量。我用.bat文件下载BrowserMob应用程序。我也与Selenium Webdriver合作。我从Github将.cs文件添加到Browser项目中。我想要的是获得网络流量。BrowserMob无法使用Selenium Webdriver
我的代码是:
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打开时,开始也工作得很好,但我有出现在cmd中的错误:
错误文件管理器(bmp.log)java.io.FileNotFound异常bmp.log(访问被拒绝)
- 错误无法注入到领域的建设者类插件类型类org.apache.logging.log4j.core无法为bmp.log
- 错误无法调用类类org.apache工厂方法创建经理。 logging.log4j.core.appender.FileAppender for element file java.lang.IllegalStateException:找不到工厂方法
- 文件在appenders中的错误NULL对象返回
-错误无法找到记录器配置的appender“文件”。
答
嘿,我在这里度过了同样的问题
我改变了.Start
过程中Server.cs
开始像这样:
_serverProcess = new Process
{
StartInfo = { FileName = _path,
UseShellExecute = true,
Verb = "runas"
}
}
的UseShellExecute
和Verb
是关键在这里,我还添加了app.manifest
有:
requestedExecutionLevel level="requireAdministrator" uiAccess="false"
好的,访问被拒绝我已经解决了。我应该以Administrator身份运行这个BrowserMob。 – Barpe2