• jsoup select 选择器(Day_02)


         

      “自己”这个东西是看不见的,撞上一些别的什么,反弹回来,才会了解“自己”。

    所以,跟很强的东西、可怕的东西、水准很高的东西相碰撞,然后才知道“自己”是什么,这才是自我 。


     

    运行环境

    JDK8 + IntelliJ IDEA 2018.3 

    利用方法

    Element.select(String selector)Elements.select(String selector)

    jar包文件

    https://files.cnblogs.com/files/papercy/jsoup_jar%E5%8C%85.rar

    描述

    Jsoup的元素支持类似CSS或(jquery)的选择器语法的查找匹配的元素,可实现功能强大且鲁棒性好的查询。

    Select方法可作用于DocumentElements或Element,且是上下文相关的,因此可实现指定元素的过滤,或者链式选择访问。

    以下共介绍使用十种方法获取 xml元素

    XML代码

    <?xml version="1.0" encoding="UTF-8"?>
    <students>
        <student id="1">
            <name>feifeiye</name>
            <age>19</age>
            <sex>nv</sex>
        </student>
        <student id="2" class="two">
            <name>papercy</name>
            <age id="3" text-color="red" >19</age>
            <sex>nan</sex>
        </student>
    </students>

    JAVA代码实现

    
    
    public static void main(String[] args) {
    
            /*获取document文档,反射path*/
    
            String path=JsoupDemo1.class.getClassLoader().getResource("Students.xml").getPath();
    
            try {
                Document document = Jsoup.parse(new File(path),"utf-8");
    
                /*获取elements/element*/
    
                Elements element=document.getAllElements();
    
               System.out.println("element:"+element);
     } catch (IOException e) {
            e.printStackTrace();
        }
    }
    
    

    选择器使用

    • 使用 * 选择器
          Elements elements = document.select("*");
      

      System.out.println(
      "element * 号选择器:"+elements);
    • 使用class 选择器

        

     Elements elements1 = document.select(".two");
               System.out.println("element class 选择器:"+elements1);
    •    使用ID 选择器
     Elements element1 =  document.select("#1");
               System.out.println("element1 id 选择器:"+element1);
    •     使用 Tag 选择器
    Elements elements2 = document.select("name");
         System.out.println("eleemnts2 tag 选择器:"+elements2);
    • 使用 [attribute]: 利用属性
     Elements elements3 =  document.select("[text-color]");
    
     System.out.println("elements3 [attribute] 选择器:"+elements3);
    • 使用 [^attr=value]  : 利用属性值
     Elements elements4 = document.select("[text-color=red]");
    
     System.out.println("elements4 [^attr=value]  选择器:"+elements4);

    • 使用 parent > child : 查找某个父元素下的直接子元素
     Elements elements5 = document.select("student>sex");

    System.out.println("element5 parent > child 选择器 :"+elements5);
    • 使用 ancestor child : (查找某个元素下子元素)
    • Elements element2 = document.select("students name"); System.out.println("element2 ancestor child 选择器:"+element2);
    • 使用 containsOwn(text):查找直接包含给定文本的元素
     Elements element3 = document.select("name:contains(feifeiye)");
    
     System.out.println("element3 containsOwn(text)选择器:"+element3);
    • 使用 eq(n): 查找哪些元素的同级索引值与n相等
     Elements elements6 = document.select("student age:eq(1)");
              
      System.out.println("elements6 eq(n)选择器:"+elements6);

       心得

      

    希望本无所谓有,无所谓无的。这正如地上的路;其实地上本没有路,走的人多了,也便成了路。

    很多东西,只有花时间去做了,才能有个成功与否,站着看的永远比走的慢。或许看上去很厉害,很难的东西,你去实践的时候会发现没有想象中的难。

    会不会是取决你做了没做,而不是想了没想。

    
    

     

  • 相关阅读:
    C# 序列化技术详解《转》
    DataGridView中的DataGridViewComboBoxColumn使用浅析
    取EXCEL文件的3种方法
    教你几种在SQLServer中删除重复数据方法
    事件浅析
    迭代委托链
    C#调用耗时函数时显示进度条浅探
    启动公告【过时】
    在Web应用中接入微信支付的流程之极简清晰版
    VBoxManage: error: Cannot register the hard disk 解决办法
  • 原文地址:https://www.cnblogs.com/papercy/p/13529399.html
Copyright © 2020-2023  润新知