Il est sur le point WebDriver, en particulier HtmlUnitDriver et FirefoxWebDriverHtmlUnit d'émission proxy
je les mêmes paramètres de proxy pour les HtmlUnitDriver et FirefoxWebDriver, mais seulement FirefoxWebDriver fonctionne.
Ce que j'ai obtenu avec HtmlUnitDriver était "Accès refusé" du serveur proxy. J'ai une page blanche lorsque je n'ai pas utilisé les paramètres de proxy. Je ne pense pas que cela ait quelque chose à voir avec le nom d'utilisateur ou le mot de passe, car j'ai eu la même erreur si je n'avais pas défini le nom d'utilisateur ou le mot de passe.
Ce qui suit est mon code, n'importe quelle idée serait appréciée. Merci!
public WebDriver createHtmlUnitWebDriver() {
HtmlUnitDriver htmlUnitDriver = new HtmlUnitDriver() {
@Override
protected WebClient modifyWebClient(WebClient client) {
client.setProxyConfig(new ProxyConfig(PROXY_HOST, PROXY_PORT));
DefaultCredentialsProvider credentialsProvider = new DefaultCredentialsProvider();
credentialsProvider.addCredentials("username", "password");
credentialsProvider.addProxyCredentials("username", "password", PROXY_HOST, PROXY_PORT);
client.setCredentialsProvider(credentialsProvider);
return client;
}
};
htmlUnitDriver.setProxy(PROXY_HOST, PROXY_PORT);
htmlUnitDriver.setJavascriptEnabled(true);
return htmlUnitDriver;
}
public WebDriver createFirefoxWebDriver() {
FirefoxProfile firefoxProfile = new FirefoxProfile();
firefoxProfile.setPreference("network.proxy.type", 1);
firefoxProfile.setPreference("network.proxy.http", PROXY_HOST);
firefoxProfile.setPreference("network.proxy.http_port", PROXY_PORT);
firefoxProfile.setPreference("network.proxy.ssl", PROXY_HOST);
firefoxProfile.setPreference("network.proxy.ssl_port", PROXY_PORT);
firefoxProfile.setPreference("network.proxy.no_proxies_on", "");
return new FirefoxDriver(firefoxProfile);
}
pourriez-vous s'il vous plaît regarder la question à http://stackoverflow.com/questions/2131049/problem-in-htmlunit-api-for-java-headless-browser –