2016-04-04 50 views
3

我想可以使用HtmlUnit,在代理使用的HtmlUnit:背後代理

public class App { 
public static void main(String[] args) throws Exception { 

    System.setProperty("http.proxyHost", "172.23.232.10"); 
    System.setProperty("http.proxyPort", "8080"); 

    final WebClient webClient = new WebClient(); 
    final HtmlPage page = webClient.getPage("http://www.google.com"); 
    System.out.println(page.getTitleText()); 

    } 
} 

而且我有一個連接的time out異常

Exception in thread "main" org.apache.http.conn.HttpHostConnectException: Connect to www.google.com:80 [www.google.com/172.217.16.196] failed: Connection timed out: connect 
at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:158) 
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353) 

是否有用於指定代理性質的解決方案的HtmlUnit(瀏覽器)

回答

2

試試這個:

ProxyConfig proxyConfig = new ProxyConfig("172.23.232.10", 8080); 
webClient.getOptions().setProxyConfig(proxyConfig); 

您有更多信息here

1

你可以做proxy像這樣:

WebClient webClient = new WebClient(BrowserVersion.FIREFOX_45, proxyHost, proxyPort);