Java Selenium / HtmlunitDriver打开了错误的网站

时间:2017-04-28 21:53:55

标签: java selenium unicode utf-8 htmlunit

我尝试使用`driver.get(url):

打开一个网站
    driver = new HtmlUnitDriver(BrowserVersion.CHROME);
    driver.setJavascriptEnabled(true);
    driver.setAcceptSslCertificates(true);
    driver.setDownloadImages(true);

    driver.get(<private url>);

然而,URL包含一个'Ö',一个德国变形金刚。 因此,驾驶员将'ö'替换为'%D6'

所以它打开了一个错误的网站。

我尝试在Eclipse中更改为UTF-8;没用。

同样使用unicode也无效。

有没有人有想法?

1 个答案:

答案 0 :(得分:0)

您的案例适用于2.27-SNAPSHOT

indexÖ.html:

<body>Ö</body>

Java代码:

    WebDriver driver = new HtmlUnitDriver();
    driver.get("http://localhost:8080/indexÖ.html");
    System.out.println(driver.getPageSource());

输出:

<?xml version="1.0" encoding="ISO-8859-1"?>
<html>
  <head/>
  <body>
    Ã
  </body>
</html>

这也是真正的Chrome所展示的。

正如您所说,确保您的所有工作区都是UTF-8: enter image description here

如果您使用的是maven:

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>