selenium webdriver与特殊字符的调用链接

时间:2014-01-07 16:40:00

标签: java selenium

我正在尝试使用selenium web-driver,并希望使用类似于以下代码的内容:

WebDriver driver = new FirefoxDriver();
driver.get("http:\\awebsite.com?that%20has%20x");

不幸的是,当我执行代码时,在浏览器中出现:

http:\\awebsite.com?that has x

我需要做什么才能使%20不被“空格”取代?

提前谢谢!

1 个答案:

答案 0 :(得分:0)

一个好的解决方案是使用java的URLEncoder类。

对于你的例子:

String q = "that%20has%20x";
String url = "http://google.com?q=" + URLEncoder.encode(q, "UTF-8");
driver.get(url);

在浏览器地址栏中,您会看到:

https://www.google.com/?q=that%2520has%2520x

当地址被编码时,'%'成为'%25'。

Here's a great Encoding Reference on www.w3schools.com

这与使用@Nathan Merrill的建议有相同的结果。