Jsoup select()常用方法


使用案例

 

import org.jsoup.Jsoup;

import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;

import java.io.File;
import java.io.IOException;

public class JsoupDemo5 {
//select() 常用方法
public static void main(String[] args) {


//先獲取document文檔對象
String path=JsoupDemo5.class.getClassLoader().getResource("students.xml").getPath();
try {
Document document= Jsoup.parse(new File(path),"UTF-8");

//select()方法使用
Elements all= document.select("*");
System.out.println("顯示所有元素:"+all);
System.out.println("````````````````````````````````````````````````");

Elements element= document.select("age");
System.out.println("顯示包含age的元素:"+element);
System.out.println("````````````````````````````````````````````````");

Elements id= document.select("#2");
System.out.println("顯示id為2的元素:"+id);
System.out.println("````````````````````````````````````````````````");


Elements class1= document.select(".te");
System.out.println("顯示class為te的元素:"+class1);
System.out.println("````````````````````````````````````````````````");


Elements attr= document.select("[class]");
System.out.println("顯示屬性包含class的元素:"+attr);
System.out.println("````````````````````````````````````````````````");

//student索引小於2的元素
Elements lt= document.select("student:lt(1)");
System.out.println("顯示student標簽中索引小於2的元素:"+lt);
System.out.println("````````````````````````````````````````````````");

//student索引大於2的元素
Elements gt= document.select("student:gt(1)");
System.out.println("顯示student標簽中索引大於1的元素:"+gt);
System.out.println("````````````````````````````````````````````````");

//5
//student索引等於n的元素
Elements eq= document.select("student:eq(1)");
System.out.println("顯示student標簽中第二個:"+eq);
System.out.println("````````````````````````````````````````````````");

//6
//包含至少一個匹配選擇器元素的元素
Elements has= document.select("student:has(kc)");
System.out.println("顯示student包含至少一個kc:"+has);
System.out.println("````````````````````````````````````````````````");

//7
//與選擇器不匹配的元素
Elements not= document.select("student:not(student:has(kc))");
System.out.println("顯示student中不包含kc的元素:"+not);
System.out.println("````````````````````````````````````````````````");

//8
//包含指定文本的元素。搜索不區分大小寫。文本可以出現在找到的元素或它的任何后代元素中。
Elements contains= document.select("student:contains(java)");
System.out.println("查找包含文本java的student個元素。:"+contains);
System.out.println("````````````````````````````````````````````````");

//9
//屬性為id,值為“2”的元素
Elements attr1= document.select("[id=2]");
System.out.println("查找包含文本java的student個元素。:"+attr1);
System.out.println("````````````````````````````````````````````````");

//10
//匹配所有元素
Elements p= document.select("kc");
System.out.println("查找包含kc的元素:"+p);
} catch (IOException e) {
e.printStackTrace();
}

}
}

運行結果

顯示所有元素:<!--?xml version="1.0" encoding="UTF-8"?-->
<html>
<head></head>
<body>
<students> 
<student id="1" class="red" major="java"> 
<name color="pink">
陳夢凡
</name> 
<age>
18
</age> 
<favorite>
reading
</favorite> 
</student> 
<student id="2"> 
<name>
javaboy
</name> 
<age>
18
</age> 
<favorite>
programming
</favorite> 
</student> 
<student id="3"> 
<name>
javagirl
</name> 
<age>
17
</age> 
<favorite>
sleep
</favorite> 
</student> 
<student> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student> 
<student id="test"> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student> 
<student id="test1" class="te"> 
<name>
javagir43
</name> 
<age>
11
</age> 
<kc>
lllll
</kc> 
<favorite>
oooo
</favorite> 
</student> 
</students>
</body>
</html>
<html>
<head></head>
<body>
<students> 
<student id="1" class="red" major="java"> 
<name color="pink">
陳夢凡
</name> 
<age>
18
</age> 
<favorite>
reading
</favorite> 
</student> 
<student id="2"> 
<name>
javaboy
</name> 
<age>
18
</age> 
<favorite>
programming
</favorite> 
</student> 
<student id="3"> 
<name>
javagirl
</name> 
<age>
17
</age> 
<favorite>
sleep
</favorite> 
</student> 
<student> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student> 
<student id="test"> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student> 
<student id="test1" class="te"> 
<name>
javagir43
</name> 
<age>
11
</age> 
<kc>
lllll
</kc> 
<favorite>
oooo
</favorite> 
</student> 
</students>
</body>
</html>
<head></head>
<body>
<students> 
<student id="1" class="red" major="java"> 
<name color="pink">
陳夢凡
</name> 
<age>
18
</age> 
<favorite>
reading
</favorite> 
</student> 
<student id="2"> 
<name>
javaboy
</name> 
<age>
18
</age> 
<favorite>
programming
</favorite> 
</student> 
<student id="3"> 
<name>
javagirl
</name> 
<age>
17
</age> 
<favorite>
sleep
</favorite> 
</student> 
<student> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student> 
<student id="test"> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student> 
<student id="test1" class="te"> 
<name>
javagir43
</name> 
<age>
11
</age> 
<kc>
lllll
</kc> 
<favorite>
oooo
</favorite> 
</student> 
</students>
</body>
<students> 
<student id="1" class="red" major="java"> 
<name color="pink">
陳夢凡
</name> 
<age>
18
</age> 
<favorite>
reading
</favorite> 
</student> 
<student id="2"> 
<name>
javaboy
</name> 
<age>
18
</age> 
<favorite>
programming
</favorite> 
</student> 
<student id="3"> 
<name>
javagirl
</name> 
<age>
17
</age> 
<favorite>
sleep
</favorite> 
</student> 
<student> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student> 
<student id="test"> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student> 
<student id="test1" class="te"> 
<name>
javagir43
</name> 
<age>
11
</age> 
<kc>
lllll
</kc> 
<favorite>
oooo
</favorite> 
</student> 
</students>
<student id="1" class="red" major="java"> 
<name color="pink">
陳夢凡
</name> 
<age>
18
</age> 
<favorite>
reading
</favorite> 
</student>
<name color="pink">
陳夢凡
</name>
<age>
18
</age>
<favorite>
reading
</favorite>
<student id="2"> 
<name>
javaboy
</name> 
<age>
18
</age> 
<favorite>
programming
</favorite> 
</student>
<name>
javaboy
</name>
<age>
18
</age>
<favorite>
programming
</favorite>
<student id="3"> 
<name>
javagirl
</name> 
<age>
17
</age> 
<favorite>
sleep
</favorite> 
</student>
<name>
javagirl
</name>
<age>
17
</age>
<favorite>
sleep
</favorite>
<student> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student>
<name>
javagirl2
</name>
<age>
178
</age>
<favorite>
sleep2
</favorite>
<student id="test"> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student>
<name>
javagirl2
</name>
<age>
178
</age>
<favorite>
sleep2
</favorite>
<student id="test1" class="te"> 
<name>
javagir43
</name> 
<age>
11
</age> 
<kc>
lllll
</kc> 
<favorite>
oooo
</favorite> 
</student>
<name>
javagir43
</name>
<age>
11
</age>
<kc>
lllll
</kc>
<favorite>
oooo
</favorite>
````````````````````````````````````````````````
顯示包含age的元素:<age>
18
</age>
<age>
18
</age>
<age>
17
</age>
<age>
178
</age>
<age>
178
</age>
<age>
11
</age>
````````````````````````````````````````````````
顯示id為2的元素:<student id="2"> 
<name>
javaboy
</name> 
<age>
18
</age> 
<favorite>
programming
</favorite> 
</student>
````````````````````````````````````````````````
顯示class為te的元素:<student id="test1" class="te"> 
<name>
javagir43
</name> 
<age>
11
</age> 
<kc>
lllll
</kc> 
<favorite>
oooo
</favorite> 
</student>
````````````````````````````````````````````````
顯示屬性包含class的元素:<student id="1" class="red" major="java"> 
<name color="pink">
陳夢凡
</name> 
<age>
18
</age> 
<favorite>
reading
</favorite> 
</student>
<student id="test1" class="te"> 
<name>
javagir43
</name> 
<age>
11
</age> 
<kc>
lllll
</kc> 
<favorite>
oooo
</favorite> 
</student>
````````````````````````````````````````````````
顯示student標簽中索引小於2的元素:<student id="1" class="red" major="java"> 
<name color="pink">
陳夢凡
</name> 
<age>
18
</age> 
<favorite>
reading
</favorite> 
</student>
````````````````````````````````````````````````
顯示student標簽中索引大於1的元素:<student id="3"> 
<name>
javagirl
</name> 
<age>
17
</age> 
<favorite>
sleep
</favorite> 
</student>
<student> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student>
<student id="test"> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student>
<student id="test1" class="te"> 
<name>
javagir43
</name> 
<age>
11
</age> 
<kc>
lllll
</kc> 
<favorite>
oooo
</favorite> 
</student>
````````````````````````````````````````````````
顯示student標簽中第二個:<student id="2"> 
<name>
javaboy
</name> 
<age>
18
</age> 
<favorite>
programming
</favorite> 
</student>
````````````````````````````````````````````````
顯示student包含至少一個kc:<student id="test1" class="te"> 
<name>
javagir43
</name> 
<age>
11
</age> 
<kc>
lllll
</kc> 
<favorite>
oooo
</favorite> 
</student>
````````````````````````````````````````````````
顯示student中不包含kc的元素:<student id="1" class="red" major="java"> 
<name color="pink">
陳夢凡
</name> 
<age>
18
</age> 
<favorite>
reading
</favorite> 
</student>
<student id="2"> 
<name>
javaboy
</name> 
<age>
18
</age> 
<favorite>
programming
</favorite> 
</student>
<student id="3"> 
<name>
javagirl
</name> 
<age>
17
</age> 
<favorite>
sleep
</favorite> 
</student>
<student> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student>
<student id="test"> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student>
````````````````````````````````````````````````
查找包含文本java的student個元素。:<student id="2"> 
<name>
javaboy
</name> 
<age>
18
</age> 
<favorite>
programming
</favorite> 
</student>
<student id="3"> 
<name>
javagirl
</name> 
<age>
17
</age> 
<favorite>
sleep
</favorite> 
</student>
<student> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student>
<student id="test"> 
<name>
javagirl2
</name> 
<age>
178
</age> 
<favorite>
sleep2
</favorite> 
</student>
<student id="test1" class="te"> 
<name>
javagir43
</name> 
<age>
11
</age> 
<kc>
lllll
</kc> 
<favorite>
oooo
</favorite> 
</student>
````````````````````````````````````````````````
查找包含文本java的student個元素。:<student id="2"> 
<name>
javaboy
</name> 
<age>
18
</age> 
<favorite>
programming
</favorite> 
</student>
````````````````````````````````````````````````
查找包含kc的元素:<kc>
lllll
</kc>

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM