2015-07-11 79 views
3

我的名字是利奧,我是一個java bot開發者,我使用Selenium webdriver和瀏覽器HtmlUnitDriver無頭,我的問題就像我的標題所說:我知道如何使用FirefoxDriver設置代理,但我不想使用UI瀏覽器,因爲它執行起來太慢,所以,在谷歌和另一個頁面搜索我沒有發現任何類似的東西,如果有人知道如何使用HtmlUnitDriver打開一個代理Url,請幫助你的答案對我有用,謝謝。如何使用selenium webdriver爲瀏覽器HtmlunitDriver for Java設置代理?

我用這個for FirefoxDriver,我想用HtmlUnitDriver做同樣的事情。

org.openqa.selenium.Proxy proxy = new org.openqa.selenium.Proxy(); 
    proxy.setHttpProxy("198.2.202.49:80") 
     .setFtpProxy("198.2.202.49:80") 
     .setSslProxy("198.2.202.49:80"); 
    DesiredCapabilities cap = new DesiredCapabilities(); 
    cap.setCapability(CapabilityType.PROXY, proxy); 
    WebDriver driver = new FirefoxDriver(cap); 

回答

0

你可以嘗試用下面的代碼

HtmlUnitDriver driver = new HtmlUnitDriver(capabilities); 
ArrayList<String> noProxyHosts = null; 
driver.setHTTPProxy("198.2.202.49", 80, noProxyHosts); 
+0

謝謝你的回覆,我可以要求你嗎?你能給我一個基本的代碼示例,使用你給我的代碼打開一個簡單的URL嗎?一些只適用於複製和粘貼的東西。 –

+0

你能檢查下面的代碼嗎?HtmlUnitDriver driver = new HtmlUnitDriver(); \t \t \t \t Proxy proxy = new Proxy(); \t \t \t \t proxy.setHttpProxy(「198.2.202.49:80」); \t \t \t \t driver.setProxySettings(proxy); \t \t \t \t driver.get(「http://google.com」); –

+0

我使用此代碼在www.iplocation.com進行測試,如果ip我設置它是一樣的,就像我給它這是代碼但不工作:S –

2

這就是答案我自己的問題,我做的方法「@Raghav N」告訴我,非常感謝! :D(y)

我這樣做和完美的工作,它可以進行測試,因爲打開www.find-ip.net和報廢實際代理活動,它與我所放的一樣。

這裏的代碼工作,如果你想測試它,複製並粘貼在你的專業。 注意:對於類代理,您需要「導入org.openqa.selenium.Proxy;」

HtmlUnitDriver driver = new HtmlUnitDriver(); 
Proxy proxy = new Proxy(); 
proxy.setHttpProxy("42.117.1.78:3128"); 
driver.setProxySettings(proxy); 
driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS); 
driver.get("http://www.find-ip.net"); 
String ip = driver.findElement(By.xpath("//*[@id='ipbox']/div[1]/div[2]")).getText(); // Copia el texto del actual ip 
String pais = driver.findElement(By.xpath("//*[@id='ipbox']/div[2]/div[2]")).getText(); //Copia el texto del actual Pais del proxy 
System.out.println("» Ip Ficticio: " + ip +" - Country: " + pais); 

輸出:

Ip: 42.117.1.78  -  Country: Viet Nam 

如果頁面加載不也許是代理來與另一個嘗試。

我希望這會幫助你,再見! :)

相關問題