我尝试使用HTMLUnit加载简单的页面,它会抛出以下错误
Enclosed exception:
net.sourceforge.htmlunit.corejs.javascript.EcmaError: ReferenceError: "define" is not defined.
我认为这是因为ECMA6的问题?但我无法找到任何解决方法
答案 0 :(得分:0)
我的第一次尝试是忽略所有与javascript相关的异常,因为在大多数网站上,即使某些javascript没有被执行,有趣的部分也会有效。
webClient.getOptions().setThrowExceptionOnScriptError(false);
//因为javascript
其他一些通常有用的属性(与您的问题没有直接关系)是:
webClient.setJavaScriptTimeout(30000);
//限制为eg30s webClient.getOptions().setTimeout(300000);
//超时到例如300s = 5min webClient.getOptions().setCssEnabled(false);
webClient.getOptions().setPopupBlockerEnabled(true);
webClient.setRefreshHandler(new WaitingRefreshHandler(...));
//限制刷新时间