我尝试使用BrowserMob Proxy’s
与WebDriver
。我使用下一个代码:
public static void main(String[] args) throws Exception {
String strFilePath = "";
// start the proxy
ProxyServer server = new ProxyServer(4455);
server.start();
//captures the moouse movements and navigations
server.setCaptureHeaders(true);
server.setCaptureContent(true);
// get the Selenium proxy object
Proxy proxy = server.seleniumProxy();
// configure it as a desired capability
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.PROXY, proxy);
// start the browser up
WebDriver driver = new FirefoxDriver(capabilities);
// create a new HAR with the label "apple.com"
server.newHar("assertselenium.com");
// open yahoo.com
driver.get("http://assertselenium.com");
driver.get("http://assertselenium.com/2012/10/30/transformation-from-manual-tester-to-a-selenium-webdriver-automation-specialist/");
// get the HAR data
Har har = server.getHar();
FileOutputStream fos = new FileOutputStream(strFilePath);
har.writeTo(fos);
server.stop();
driver.quit();
}
我得到了下一个错误:The proxy server is refusing connections: Firefox is configured to use a proxy server that is refusing connections.
我也尝试用端口4455
运行browsermob-proxy.bat
,然后当我运行main
时,我得到下一个错误:
java.net.BindException: Address already in use: JVM_Bind
如何使用BrowserMob代理?
声明代理的代码似乎是正确的。对于bindeexception,很明显已经有东西在使用端口4455。您可以检查它(在Windows机器上,从内存写入):
netstat -ano | find "4455"
Linux中的使用lsof -i:4455
获取PID并杀死它。无论如何,对于拒绝连接的代理,尝试显式设置代理,看看是否有任何运气,例如
proxy.setHttpProxy("localhost:4455");
proxy.setSslProxy("localhost:4455");
另外,请确保您使用的是最新版本的FF和BMP。
java.net. bindexcexception: Address already in use: JVM_Bind .
尝试禁用internet explorer代理。