Jsoup_Select 选择器
一,概述
可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。
二,Jsoup对象的使用
- parse(String html):解析xml或html的文档对象
• 需解析xml代码
<?xml version="1.0" encoding="UTF-8"?> <students> <student id="1"> <name>戴延也</name> <age>18</age> <sex>女</sex> </student> <student id="2" class="rad"> <name>文海涛</name> <age>19</age> <sex>男</sex> </student> <student id="3" class="pink"> <name name="xx">戴小涛</name> <age>10</age> <sex>男</sex> </student> </students>
• 属性名为“ attr”且值以“ valPrefix”开头的元素
Elements elements7=document.select("[class^=pink]");
System.out.println("elements7:"+elements7);
• 属性名为“ attr”且值等于“ val”的元素
Elements elements6=document.select("[id=2]");
System.out.println("elements6:"+elements6);
• 包含指定文本的元素。搜索不区分大小写。文本可能出现在找到的元素或其任何后代中。
Elements elements4=document.select("student:contains(文海涛)");
System.out.println("elements4:"+elements4);
• 类名称为“ class”的元素
Elements elements5=document.select(".pink");
System.out.println("elements5:"+elements5);
•代码运行效果
***************************** elements4:<student id="2" class="rad"> <name> 文海涛 </name> <age> 19 </age> <sex> 男 </sex> </student> ***************************** elements5:<student id="3" class="pink"> <name name="xx"> 戴小涛 </name> <age> 10 </age> <sex> 男 </sex> </student> ***************************** elements6:<student id="2" class="rad"> <name> 文海涛 </name> <age> 19 </age> <sex> 男 </sex> </student> ***************************** elements7:<student id="3" class="pink"> <name name="xx"> 戴小涛 </name> <age> 10 </age> <sex> 男 </sex> </student> ***************************** elements8:<name name="xx"> 戴小涛 </name>