HtmlUnit 无法识别有效 CSS

HtmlUnit Doesn't Recognize Valid CSS

所以,我刚开始使用 HtmlUnit(字面意思是刚刚),我已经 运行 出错了。我有一些简单的代码:

fun getPage() { val page: Page = WebClient().getPage("http://htmlunit.sourceforge.net") }

但是,它抛出一个非常长的错误:

WARNING: CSS error: 'http://htmlunit.sourceforge.net/css/apache-maven-fluido-1.5.min.css' [9:90176] Error in declaration. '*' is not allowed as first char of a property.
Jan 24, 2018 4:14:58 PM com.gargoylesoftware.htmlunit.DefaultCssErrorHandler error
WARNING: CSS error: 'http://htmlunit.sourceforge.net/css/apache-maven-fluido-1.5.min.css' [9:91151] Error in declaration. '*' is not allowed as first char of a property.
Jan 24, 2018 4:14:59 PM com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
WARNING: Obsolete content type encountered: 'text/javascript'.
Jan 24, 2018 4:15:00 PM com.gargoylesoftware.htmlunit.javascript.StrictErrorReporter runtimeError
//continues the above sequence a lot, and then ends with:

SEVERE: runtimeError: message=[An invalid or illegal selector was specified (selector: '*,:x' error: Invalid selector: :x).] sourceName=[http://htmlunit.sourceforge.net/js/apache-maven-fluido-1.5.min.js] line=[25] lineSource=[null] lineOffset=[0]

我看了link provided by the error,CSS里面好像有很多星号。准确地说是 194(包括注释区域中使用的星号)。我还尝试加载其他网页,但似乎无法理解网页的 CSS 是否有效。

我是不是做错了什么,或者我应该让它忽略 CSS? (我不确定这是否可行,但我更喜欢它。)

首先关于css警告

  • 这是一个警告
  • 有关此内容的更多信息,请参阅 star hack
  • 如果你仍然认为这是有效的css请打开一个 CSSParser 问题,我会看看

第二:无效或非法select或指定....

如果您使用 HtmlUnit 测试页面,这很常见。背景是许多 javascript 库(如 jQuery 使用的 sizzle)正在做一些检查以确定您的浏览器支持哪些功能。您看到的输出是其中一项检查的结果。这个人试图弄清楚 javascript select 方法是否能够与一种特殊的 css-select or 一起工作。在 javascript 代码中围绕此 selector 用法有一个 try-catch,如果 selector 失败(实际上这发生在许多浏览器中),则该功能不可用并且 lib退回到其他一些方式来做 selection。在错误日志中看到这个的原因是 HtmlUnit 历史的一部分。这个库最初是为网络测试而设计的,基于这个库在异常被抛出时记录每个 javascript 异常(即使异常是 catched/handled 之后)。所以你或多或少可以忽略这一点; HtmlUnit 不会因此而停止工作。