zoukankan      html  css  js  c++  java
  • 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>

     
  • 相关阅读:
    201771030123-王爽 实验一 软件工程准备—阅读《现代软件工程—构建之法》并提问
    《面向对象程序设计课程学习进度条》
    201771010132-徐思 实验四 软件项目案例分析
    201771010132-徐思 实验三 结对项目-《西北师范大学疫情防控信息系统》
    201771010132-徐思 实验一 软件工程准备-浏览《构建之法》
    徐思201771010132 《面向对象程序设计(java)》课程学习总结
    徐思 201771010132
    徐思201771010132《面向对象程序设计(java)》第十六周学习总结
    徐思201771010132《面向对象程序设计(java)》第十五周学习总结
    徐思201771010132《面向对象程序设计(java)》第十四周学习总结
  • 原文地址:https://www.cnblogs.com/CjtBlog/p/13531178.html
Copyright © 2011-2022 走看看