只想吐槽:官方文档真难看 官方文档真难看 官方文档真难看 先记录先查询官方文档步骤,防止后期忘了: 解压jsoup-1.11.2-javadoc.jar,找到里面的index.html打开,点击唯一点得动的“FRAMES”,(这里不上图了,上图也可能显示不出来)然后在左侧边栏里找到“Element”,在Element里找到select方法,点进去,再点击select方法最下面下的selector。然后开始蛋疼的selector之旅吧! 工程里记得导Jsoup架包,下面直接上代码例子: //获取xml文件的全路径pathString path = JsoupDemo02.class.getClassLoader().getResource("dtd/book.xml").getPath();//解析文件获取DOM树,即document
Document document = Jsoup.parse(new File(path),"utf-8");//select查询语句
Elements elements = document.select("书[编号=\"u002\"]");
System.out.println(elements); 现在来对查询语句进行整理和修改:将("书[编号=\"u002\"]")进行修改 *:查询所有 ("书[编号=\"u002\"]")改为 (“*”) tag: 查询给定的标签名:(“tag”)如 (“书”) #id 查询带有指定ID属性的元素(”#new”)这里的id=“new” .class 查询类名为“class”的元素 (”.class”)如(”.left”) [attr]: 查询属性为attr的元素 (”a[attr]”)如 (“书[编号]”) [^attrPrefix] 属性名称以“attrPrefix”开头的元素。如(” [^data]”),属性全名有dataNew,dataOld (下面就去括号和引号了哈,实在不想打) [attr=val] 元素的属性为“attr”,值为“val”,如a[rel=nofollow] [attr="val"] 跟上面类似,只是这里的val为字符串类型,需要对引号加转义,如 ("书[编号=\"u002\"]") , span[hello=\"Cleveland\"] E F: E下面的所有F元素(无论是不是E的子节点) 如 div a E > F: E下面的子节点 F 元素 如: div > a E + F: E与F平级,并且E在F前,中间无其它平级元素,查询出的结果为F的内容 如:a + b 结果为b的内容 E, F, G:所有匹配的元素E F G
|