【发布时间】:2018-12-15 17:20:42
【问题描述】:
我正在尝试使用 Html Unit 在网页上运行 javascript 以更改页面。
我正在导入:
import com.gargoylesoftware.htmlunit.BrowserVersion;
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
import com.gargoylesoftware.htmlunit.html.HtmlDivision;
import com.gargoylesoftware.htmlunit.NicelyResynchronizingAjaxController;
import com.gargoylesoftware.htmlunit.ScriptResult;
代码类似于:
String javaScriptCode = "changePage(1)";
try{
webClient = new WebClient(BrowserVersion.CHROME);
webClient.getOptions().setCssEnabled(false);
webClient.getOptions().setJavaScriptEnabled(true);
page = webClient.getPage(url);
newPage = page.executeJavaScript(javaScriptCode).getNewPage();
webClient.close();
} catch (Exception e) {
e.printStackTrace();
}
但是我得到了错误:
[Java] The method getNewPage() is undefined for the type ScriptResult [67108964]
这很清楚,但它并没有告诉我应该使用哪种方法?我在互联网上找到的大部分内容都是基于 getNewPage 方法或 getPage 但图书馆可能已经发生了变化...... 见:calling a JavaScript function with HTMLUnit
我正在使用:
<dependency>
<groupId>net.sourceforge.htmlunit</groupId>
<artifactId>htmlunit</artifactId>
<version>2.33</version>
</dependency>
【问题讨论】:
标签: javascript java htmlunit