一、引言
jsoup 的过人之处——选择器
今天来介绍jsoup是如何使用选择器来对元素进行检索的。本节我们把重点放在选择器本身强大的语法上。
二、源码
XML源码
1 /**
2 * 选择器 document
3 */
4
5 //使用 :contains(text) 选择器 :包含指定文本的元素。搜索不区分大小写。文本可能出现在找到的元素或其任何后代中。
6 Elements elements = document.select("name:contains(javagirl)");
7
8 //打印
9 System.out.println("element1:"+elements);
10
11 System.out.println("========================");
12
13 //使用 tag 选择器
14 Elements elements1 = document.select("name");
15
16 //打印
17 System.out.println("elements:"+elements1);
18
19 System.out.println("========================");
20
21 //使用 :root 选择器 :作为文档根目录的元素。在HTML中,这是html元素
22 Elements elements2 = document.select(":root");
23
24 //打印
25 System.out.println("elements2:"+elements2);
26
27 System.out.println("========================");
28
29 //使用 :has(selector) 选择器 :包含至少一个与选择器匹配的元素的元素
30 Elements elements3 = document.select("student:has(name)");
31
32 //打印
33 System.out.println("elements3:"+elements3);
34
35 System.out.println("========================");
36
37 //使用 * 选择器
38 Elements elements4 = document.select("*");
39
40 //打印
41 System.out.println("elements4:"+elements4);
42
43 System.out.println("========================");
44
45 //使用 id 选择器
46 Elements elements5 = document.select("#3");
47
48 //打印
49 System.out.println("elements5:"+elements5);
50
51 System.out.println("========================");
52
53 //使用 class 选择器
54 Elements elements6 = document.select(".blue");
55
56 //打印
57 System.out.println("elements6:"+elements6);
58
59 System.out.println("========================");
60
61 //使用 :last-child 选择器 :元素是其他元素的最后一个子元素。
62 Elements elements7 = document.select("students:last-child");
63
64 //打印
65 System.out.println("elements7:"+elements7);
66
67 System.out.println("========================");
68
69 //使用 :first-child 选择器 :是其他元素的第一个子元素的元素。
70 Elements elements8 = document.select("students:first-child");
71
72 //打印
73 System.out.println("elements8:"+elements8);
74
75 System.out.println("========================");
76
77 //使用 [attribute] 选择器
78 Elements elements9 = document.select("[color]");
79
80 //打印
81 System.out.println("elements9:"+elements9);
三、总结
今日分享自己很喜欢的一段话:"人生从来就没有什么捷径,能够让你不必付出努力就能心想事成。真正有价值的一生,总是需要你去行动,去做无数件别人也许不屑尝试的小事。那些一直在一步步往前走的人,终会拥有想要的人生。"
学习也一样,不能光做计划,而不去行动。