6

是什么导致了这个错误,我该如何解决?

WebClient webClient = new WebClient();
HtmlPage page = webClient.getPage("http://stackoverflow.com");

错误信息

2013 年 5 月 25 日上午 10:34:12 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl 通知警告:遇到过时的内容类型:'text/javascript'。2013 年 5 月 25 日上午 10:34:13 com.gargoylesoftware.htmlunit.javascript.StrictErrorReporter runtimeError SEVERE: runtimeError: message=[完成此操作所需的数据尚不可用。] sourceName=[http://ajax.googleapis .com/ajax/libs/jquery/1.7.1/jquery.min.js] line=[2] lineSource=[null] lineOffset=[0] 2013 年 5 月 25 日上午 10:34:15 com.gargoylesoftware.htmlunit。 IncorrectnessListenerImpl 通知警告:遇到过时的内容类型:'text/javascript'。2013 年 5 月 25 日上午 10:34:16 com.gargoylesoftware.htmlunit.DefaultCssErrorHandler 错误警告:CSS 错误:'cdn.sstatic.net/stackoverflow/all.css?v=1748204ca390' [1:3230] 样式规则错误。(无效标记“!”。期待以下之一:, , , “继承”, , , , , , , , , , , , , , , , , , , , , , , , , , "}", "; ", "/", "-".) 2013 年 5 月 25 日上午 10:34:16 com.gargoylesoftware.htmlunit.DefaultCssErrorHandler 警告警告:CSS 警告:'cdn.sstatic.net/stackoverflow/all.css?v=1748204ca390 ' [1:3230] 忽略此规则中的以下声明。2013 年 5 月 25 日上午 10:34:16 com.gargoylesoftware.htmlunit.DefaultCssErrorHandler 错误警告:CSS 错误:'cdn.sstatic.net/stackoverflow/all.css?v=1748204ca390' [1:6341] 样式规则错误。(无效标记“!”。期待以下之一:, , , “继承”, , , , , , , , , , , , , , , , , , , , , , , , , , "}", "; ”、“/”、“-”。)2013 年 5 月 25 日上午 10:34:16 com。gargoylesoftware.htmlunit.DefaultCssErrorHandler 警告警告:CSS 警告:'cdn.sstatic.net/stackoverflow/all.css?v=1748204ca390' [1:6341] 忽略此规则中的以下声明。2013 年 5 月 25 日上午 10:34:16 com.gargoylesoftware.htmlunit.DefaultCssErrorHandler 错误警告:CSS 错误:'cdn.sstatic.net/stackoverflow/all.css?v=1748204ca390' [1:14777] 样式规则错误。(无效标记“!”。期待以下之一:, , , “继承”, , , , , , , , , , , , , , , , , , , , , , , , , , "}", "; ", "/", "-".) 2013 年 5 月 25 日上午 10:34:16 com.gargoylesoftware.htmlunit.DefaultCssErrorHandler 警告警告:CSS 警告:'cdn.sstatic.net/stackoverflow/all.css?v=1748204ca390 ' [1:14777] 忽略此规则中的以下声明。2013年5月25日10:34:上午 17 点 com.gargoylesoftware.htmlunit.DefaultCssErrorHandler 错误警告:CSS 错误:'cdn.sstatic.net/stackoverflow/all.css?v=1748204ca390' [1:31657] 样式规则错误。(无效标记“!”。期待以下之一:, , , “继承”, , , , , , , , , , , , , , , , , , , , , , , , , , "}", "; ", "/", "-"。) 2013 年 5 月 25 日上午 10:34:17 com.gargoylesoftware.htmlunit.DefaultCssErrorHandler 警告警告:CSS 警告:'cdn.sstatic.net/stackoverflow/all.css?v=1748204ca390 ' [1:31657] 忽略此规则中的以下声明。2013 年 5 月 25 日上午 10:34:17 com.gargoylesoftware.htmlunit.DefaultCssErrorHandler 错误警告:CSS 错误:'cdn.sstatic.net/stackoverflow/all.css?v=1748204ca390' [1:73253] 样式规则错误。(无效的令牌“:”。期待以下之一:, , , "继承", , , , , , , , , , , , , , , , , , , , , , , , , , "}", ";", "/", "-".) 五月2013 年 2 月 25 日上午 10:34:17 com.gargoylesoftware.htmlunit.DefaultCssErrorHandler 警告警告:CSS 警告:'cdn.sstatic.net/stackoverflow/all.css?v=1748204ca390' [1:73253] 忽略以下声明规则。2013 年 5 月 25 日上午 10:34:17 com.gargoylesoftware.htmlunit.DefaultCssErrorHandler 错误警告:CSS 错误:'cdn.sstatic.net/stackoverflow/all.css?v=1748204ca390' [1:112886] 表达式错误。(无效令牌“#ffffff”。期待以下之一:、、、、、、、、、“-”、“=”、“)”。) 2013 年 5 月 25 日上午 10:34:17 com.gargoylesoftware.htmlunit.DefaultCssErrorHandler错误警告:CSS 错误:'cdn.sstatic.net/stackoverflow/all. css?v=1748204ca390' [1:112928] 样式规则错误。(无效的令牌“背景”。期待以下之一:,“}”,“;”。)2013 年 5 月 25 日上午 10:34:17 com.gargoylesoftware.htmlunit.DefaultCssErrorHandler 警告警告:CSS 警告:'cdn.sstatic。 net/stackoverflow/all.css?v=1748204ca390' [1:112928] 忽略此规则中的以下声明。2013 年 5 月 25 日上午 10:34:19 com.gargoylesoftware.htmlunit.javascript.host.ActiveXObject jsConstructor 警告:自动化服务器无法为“ShockwaveFlash.ShockwaveFlash.7”创建对象。2013 年 5 月 25 日上午 10:34:19 com.gargoylesoftware.htmlunit.javascript.StrictErrorReporter runtimeError SEVERE: runtimeError: message=[Automation server can't create object for 'ShockwaveFlash.ShockwaveFlash.7'.] sourceName=[http:/ /www.google-analytics.com/ga。js] line=[25] lineSource=[null] lineOffset=[0] 2013 年 5 月 25 日上午 10:34:19 com.gargoylesoftware.htmlunit.javascript.host.ActiveXObject jsConstructor 警告:自动化服务器无法为“创建对象” ShockwaveFlash.ShockwaveFlash.6'。2013 年 5 月 25 日上午 10:34:19 com.gargoylesoftware.htmlunit.javascript.StrictErrorReporter runtimeError SEVERE: runtimeError: message=[Automation server can't create object for 'ShockwaveFlash.ShockwaveFlash.6'.] sourceName=[http:/ /www.google-analytics.com/ga.js] line=[25] lineSource=[null] lineOffset=[0] 2013 年 5 月 25 日上午 10:34:19 com.gargoylesoftware.htmlunit.javascript.host.ActiveXObject jsConstructor警告:自动化服务器无法为“ShockwaveFlash.ShockwaveFlash”创建对象。2013 年 5 月 25 日上午 10:34:19 com.gargoylesoftware.htmlunit.javascript。StrictErrorReporter runtimeError SEVERE: runtimeError: message=[Automation server can't create object for 'ShockwaveFlash.ShockwaveFlash'.] sourceName=[http://www.google-analytics.com/ga.js] line=[25] lineSource= [null] lineOffset=[0] 2013 年 5 月 25 日上午 10:34:20 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl 通知警告:遇到过时的内容类型:'application/x-javascript'。2013 年 5 月 25 日上午 10:34:21 org.apache.http.client.protocol.ResponseProcessCookies processCookies 警告:无效的 cookie 标头:“Set-Cookie: azk-views=; Max-Age=31536000000; Path=/; Expires=格林威治标准时间 2014 年 5 月 25 日星期日 17:34:42”。无效的 max-age 属性:31536000000 2013 年 5 月 25 日上午 10:34:21 org.apache.http.client.protocol.ResponseProcessCookies processCookies 警告:无效的 cookie 标头:“Set-Cookie: azk-events=; 最大年龄=2592000000;路径=/; Expires=Mon,2013 年 6 月 24 日 17:34:42 GMT”。无效的 max-age 属性:2592000000 2013 年 5 月 25 日上午 10:34:21 org.apache.http.client.protocol.ResponseProcessCookies processCookies 警告:无效的 cookie 标头: “设置 Cookie:azk-voting=; 最大年龄=2592000000;路径=/; Expires=Mon,2013 年 6 月 24 日 17:34:42 GMT”。无效的 max-age 属性:2592000000 2013 年 5 月 25 日上午 10:34:21 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl 通知警告:遇到过时的内容类型:'text/ javascript'。2013 年 5 月 25 日上午 10:34:23 com.gargoylesoftware.htmlunit.javascript.background.JavaScriptJobManagerImpl runSingleJob 严重:作业运行失败,出现意外的 RuntimeException:调用 setInnerHTML 的异常 2592000000 2013 年 5 月 25 日上午 10:34:21 org.apache.http.client.protocol.ResponseProcessCookies processCookies 警告:cookie 标头无效:“Set-Cookie: azk-voting=; Max-Age=2592000000; Path=/; Expires =格林威治标准时间 2013 年 6 月 24 日星期一 17:34:42”。无效的 max-age 属性:2592000000 2013 年 5 月 25 日上午 10:34:21 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl 通知警告:遇到过时的内容类型:'text/javascript'。2013 年 5 月 25 日上午 10:34:23 com.gargoylesoftware.htmlunit.javascript.background.JavaScriptJobManagerImpl runSingleJob 严重:作业运行失败,出现意外 RuntimeException:调用 setInnerHTML 的异常 2592000000 2013 年 5 月 25 日上午 10:34:21 org.apache.http.client.protocol.ResponseProcessCookies processCookies 警告:cookie 标头无效:“Set-Cookie: azk-voting=; Max-Age=2592000000; Path=/; Expires =格林威治标准时间 2013 年 6 月 24 日星期一 17:34:42”。无效的 max-age 属性:2592000000 2013 年 5 月 25 日上午 10:34:21 com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl 通知警告:遇到过时的内容类型:'text/javascript'。2013 年 5 月 25 日上午 10:34:23 com.gargoylesoftware.htmlunit.javascript.background.JavaScriptJobManagerImpl runSingleJob 严重:作业运行失败,出现意外 RuntimeException:调用 setInnerHTML 的异常

4

2 回答 2

21

这些不是错误,而是警告

它们是由 HtmlUnit 的 JavaScript 引擎Mozilla 的 Rhino无法正确解释某些 JavaScript 代码引起的。(它不像其他一些流行的 JS 引擎那样“好”。)

您可以关闭这些警告,方法如下:

public static void main(String[] args) throws Exception {
    // turn off htmlunit warnings
    java.util.logging.Logger.getLogger("com.gargoylesoftware.htmlunit").setLevel(java.util.logging.Level.OFF);
    java.util.logging.Logger.getLogger("org.apache.http").setLevel(java.util.logging.Level.OFF);

    WebClient webClient = new WebClient();
    HtmlPage page = webClient.getPage("http://stackoverflow.com");
    System.out.println(page.getTitleText());
}

输出:

Stack Overflow
于 2013-05-25T23:23:45.863 回答
1

在浏览器中设置启用 Javascript 和 CSSwebClient为:

webClient.getOptions().setJavaScriptEnabled(false);
webClient.getOptions().setCssEnabled(false);

你可以ON/OFF通过传递真或假参数。

于 2019-02-05T16:38:09.480 回答