Jsoup 快速入门

Jsoup快速入门

  1. 概念

    jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。

  2. 步骤

    • 导入jar包
    • 获取Document对象
    • 获取对应的Element对象
    • 获取数据
    public class JsoupDemo1 {
        public static void main(String[] args) throws IOException {
            //1.获取document对象,根据xml文档获取
    //        1.1获取student.xml的path
            String path = JsoupDemo1.class.getClassLoader().getResource("student.xml").getPath();
    //        1.2解析xml文档,加载文档进内存,获取dom树
            Document document = Jsoup.parse(new File(path),"utf-8");
    //        2 获取元素对象
            Elements elements = document.getElementsByTag("name");
    //        2.1 获取第一个name的Element对象
            Element element = elements.get(0);
    //        2.2获取数据
            String name = element.text();
            System.out.println(name);
        }
    }
    
  3. 对象的使用

    • Jsoup:工具类,可以解析html或xml文档,返回Document对象

      • parse方法:解析html或xml文档,返回Document对象
        • parse(File in ,String charsetName):解析xml或html文件的
        • parse(String html):解析xml或html字符串
        • parse(URL url,int timeoutMillis):通过网络路径获取指定的html或xml文档对象
    • Document:文档对象。代表内存中的dom树

      • 获取Element对象

        • getElementsByid(String id):根据id属性值获取唯一的element对象

        • getElementsByTag(String tagName):根据标签名获取元素对象集合

        • getElementsByAttribute(String key):根据属性名称获取元素对象集合

        • getElementsByTAttributeValue(String key,String value):根据对应的属性名和属性值获取元素对象集合

    • Elements:元素Element对象的集合。可以当做ArrayList来使用

      • 获取子元素对象

        • getElementsByid(String id):根据id属性值获取唯一的element对象

        • getElementsByTag(String tagName):根据标签名获取元素对象集合

        • getElementsByAttribute(String key):根据属性名称获取元素对象集合

        • getElementsByTAttributeValue(String key,String value):根据对应的属性名和属性值获取元素对象集合

      • 获取属性值

        • String attr(String key):根据属性名获取属性值
      • 获取文本内容

        • String text():获取所有子标签的纯文本内容
        • Sting html():获取标签体的所有内容(包括子标签的字符串内容)
    • Node:节点对象

      • 是Document和Element的父类
  4. 快捷查询方式

    • selector:选择器
      • 使用的方法:Elements select(String cssQuery)
        • 语法:参考Selector类中定义的语法
    • XPath:XPath即为XML路径语言,它是一种用来确定XML文档中某部分位置的语言
posted @ 2020-04-23 23:48  cjd  阅读(157)  评论(0编辑  收藏  举报