jsoup 选择器(一)常规选择器



http://injavawetrust.iteye.com/blog/2279338

jsoup 选择器(一)常规选择器

一 简单选择器

1.ID选择器 获取一个ID 为xx的元素的DOM 对象

2.元素名选择器 获取所有xx元素的DOM 对象

3.类(class)选择器 获取class 为xx的所有DOM 对象

二 进阶选择器

1.群组选择器 获取多个选择器的DOM 对象

2.后代选择器 获取追溯到的多个DOM 对象

3.通配选择器 获取所有匹配元素标签的DOM 对象


三 高级选择器


1.子选择器 只获取子类节点的多个DOM 对象

2.属性选择器

 

Java代码    收藏代码
  1. import java.io.File;  
  2. import java.io.IOException;  
  3.   
  4. import org.jsoup.Jsoup;  
  5. import org.jsoup.nodes.Document;  
  6. import org.jsoup.select.Elements;  
  7.   
  8. /** 
  9.  *  
  10.  * @author InJavaWeTrust 
  11.  * 
  12.  */  
  13. public class TestJsoup {  
  14.       
  15.     public static void main(String[] args) {  
  16.         File file = new File("E:\\InJavaWeTrust\\jsoup\\testJsoup.html");  
  17.         try {  
  18.             Document document = Jsoup.parse(file, "UTF-8");  
  19.             //简单选择器//  
  20.             //1.简单选择器 ID选择器<获取一个ID为222的元素的DOM 对象>  
  21.             Elements p = document.select("#222");  
  22.             System.out.println(p.text());  
  23.             //2.简单选择器  元素名选择器 <获取所有a元素的DOM 对象>  
  24.             Elements a = document.select("a");  
  25.             System.out.println(a.text());  
  26.             //3.简单选择器 类(class)选择器 <获取class 为class222的所有DOM 对象>  
  27.             Elements div = document.select(".class222");  
  28.             System.out.println(div.text());  
  29.               
  30.             ///进阶选择器/  
  31.               
  32.             //1.进阶选择器 群组选择器 <获取多个选择器的DOM 对象>  
  33.             Elements em = document.select("em,strong");  
  34.             System.out.println(em.text());  
  35.             //2.进阶选择器 后代选择器 <获取追溯到的多个DOM 对象>  
  36.             Elements hd =document.select("ul div a");   
  37.             System.out.println(hd.text());  
  38.             //3.进阶选择器 通配选择器 <获取所匹配元素标签的DOM 对象>  
  39.             Elements tp = document.select("span.abc*");  
  40.             System.out.println(tp.text());  
  41.               
  42.             ///高级选择器/  
  43.             //1.高级选择器 子选择器 <只获取子类节点的多个DOM 对象>  
  44.             Elements z = document.select("ul>big");  
  45.             System.out.println(z.text());  
  46.             //2.高级选择器 属性选择器  
  47.             Elements sx1 = document.select("label[id]"); //获取具有这个属性的DOM 对象  
  48.             System.out.println(sx1.text());  
  49.             Elements sx2 = document.select("label[for=man]"); //获取具有这个属性=这个属性值的DOM 对象  
  50.             System.out.println(sx2.text());  
  51.             Elements sx3 = document.select("label[for^=male]"); //获取具有这个属性且开头属性值匹配的DOM 对象  
  52.             System.out.println(sx3.text());  
  53.             Elements sx4 = document.select("label[for$=sa]"); //获取具有这个属性且结尾属性值匹配的DOM 对象  
  54.             System.out.println(sx4.text());  
  55.             Elements sx5 = document.select("label[for!=usa]"); //获取具有这个属性且不等于属性值的DOM 对象  
  56.             System.out.println(sx5.text());  
  57.             Elements sx6 = document.select("label[for~=c]"); //获取具有这个属性且属性值是以一个空格分割的列表,其中包含属性值的DOM 对象  
  58.             System.out.println(sx6.text());  
  59.             Elements sx7 = document.select("label[for*=yy]"); //获取具有这个属性且属性值含有一个指定字串的DOM 对象  
  60.             System.out.println(sx7.text());  
  61.             Elements sx8 = document.select("label[for][abc=fdfd]"); //获取具有这个属性且属性值匹配的DOM对象  
  62.             System.out.println(sx8.text());  
  63.               
  64.         } catch (IOException e) {  
  65.             e.printStackTrace();  
  66.         }  
  67.     }  
  68.   
  69. }  

 

 

运行结果:

 

ID选择器222
元素名选择器 后代选择器
类(class)选择器2
群组选择器1 群组选择器2
后代选择器
评论 通配选择器
子选择器1 子选择器2
abc
man
Male
usa
abc man Male c s a xx yy zz sss
c s a
xx yy zz
sss

 

testJsoup.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值