【问题标题】:Unknown Host in selenium HtmlUnitDriverSelenium HtmlUnitDriver 中的未知主机
【发布时间】:2019-11-30 11:31:17
【问题描述】:
我得到 Unknown Host 作为 driver.getPageSource() 的返回
public static void main(String[] arg)
{
HtmlUnitDriver driver = new HtmlUnitDriver();
driver.manage().timeouts().implicitlyWait(15,TimeUnit.SECONDS);
driver.get("https://s2fs.filedump.com");
System.out.println(driver.getPageSource());
}
我得到了未知主机的输出。
driver.get 中使用的 URL 只能在我的公司网络中访问。
此外,当我使用 chrome driver 访问相同的 url 时,它工作正常,因为它返回页面源 html。
【问题讨论】:
标签:
java
selenium
selenium-webdriver
selenium-chromedriver
htmlunit-driver
【解决方案1】:
HtmlUnitDriver 是 Selenium 的一部分,您必须使用 WebDriver 驱动程序而不是 HtmlUnitDriver 驱动程序。
请参考以下代码:
WebDriver driver = new HtmlUnitDriver();
driver.get("https://www.google.com");
System.out.println("Page title is: " + driver.getTitle());
driver.quit();
【解决方案2】:
其实是代理的问题,我用下面的代码
WebDriver driver = new HtmlUnitDriver();
Proxy proxy=new Proxy();
proxy.setHttpProxy("mycompanyproxy.xyz:port");
((HtmlUnitDriver)driver).setProxySettings(proxy);
driver.get("https://www.google.com");
System.out.println("Page title is: " + driver.getTitle());
driver.quit();