问题:
java使用NekoHTML解析HTML的时候发现NekoHTML总是把标签名转换成大写,导致之前写的XPath都用不了,虽然可以用脚本把之前的历史XPath都转换一遍,但是如果新来的运营不知道的话,还是可能会出现不必要的麻烦。
分析:
在网上一顿搜索,发现自己的blog里也有写,只是之前没有注意,NekoHTML提供了一些配置项,可以精确的配置NekoHTML的行为。
与我们这个问题相关的配置是:
DOMParser parser = new DOMParser();
parser.setProperty("http://cyberneko.org/html/properties/names/elems", "match");
//解析HTML文件
parser.parse("http://www.baidu.com");
//获取解析后的DOM树
Document document = parser.getDocument();
设置以后发现竟然没有用,关键是NekoHTML的官网也上不去,不知道是被墙了还是怎么。后来幸好在github找到一份镜像,找到了文档。
文档中这么写着: