zoukankan      html  css  js  c++  java
  • Jsoup的操作使用

    jsoup可以直接直接解析url地址或者html文本内容,以及xml文件。

    jsoup是sun公司开发的一款Java的html解析器。

    jsoup的主要功能如下:
       1. 从一个URL,文件或字符串中解析HTML;
       2. 使用DOM或CSS选择器来查找、取出数据;
       3. 可操作HTML元素、属性、文本;

    jsoup 可以从包括字符串、URL地址以及本地文件来加载 HTML 文档,并生成 Document 对象实例。

    具体代码:

    Document document= Jsoup.parse(new File(path),"utf-8");
    //查找此元素下的所有元素
    Elements elements = document.getAllElements();
    System.out.println(elements);
    System.out.println("--------------------");
    //根据id查找元素
    Element elementbyid = document.getElementById("1");
    System.out.println(elementbyid);
    System.out.println("--------------------");
    //查找具有命名属性的元素
    Elements elementbyat=document.getElementsByAttribute("sex");
    System.out.println(elementbyat);
    System.out.println("--------------------");

    //查找具有特定值的属性的元素。
    Elements elementbyvalue= document.getElementsByAttributeValue("class","1912ja");
    System.out.println(elementbyvalue);
    System.out.println("--------------------");
    //查找具有其值包含匹配字符串的属性的元素
    Elements elements1=document.getElementsByAttributeValueContaining("class","1912");
    System.out.println(elements1);
    System.out.println("_________________________________");
    //查找具有以值后缀结尾的属性的元素。
    Elements elements2=document.getElementsByAttributeValueEnding("class","na");
    System.out.println(elements2);
    System.out.println("_________________________________");
    //获取此元素的第一个同级元素
    Element element= elementbyid.firstElementSibling();
    System.out.println(element);
    System.out.println("_________________________________");
    //获取此元素的最后一个同级元素
    Element element2= elementbyid.lastElementSibling();
    System.out.println(element);
    System.out.println("_________________________________");
    //查找包含指定字符串的元素
    Elements elements3= document.getElementsContainingText("l");
    System.out.println(elements3);
    System.out.println("##################");

    //获取此元素的下一个同级元素
    Element element1=element.nextElementSibling();
    System.out.println(element1);
    System.out.println("+++++++++++++++");
    //获取此节点的父节点
    Element element3= element1.parent();
    System.out.println(element3);
    System.out.println("+++++++++++++++");
    //获取此元素的前一个同级元素.
    Element element4=element1.previousElementSibling();
    System.out.println(element4);
    System.out.println("=============");

    你可能会觉得 jsoup 的方法似曾相识,没错,像 getElementById 和 getElementsByTag 方法跟 JavaScript 的方法名称是一样的,功能也完全一致。你可以根据节点名称或者是 HTML 元素的 id 来获取对应的元素或者元素列表。 
    与 htmlparser 项目不同的是,jsoup 并没有为 HTML 元素定义一个对应的类,一般一个 HTML 元素的组成部分包括:节点名、属性和文本,jsoup 提供简单的方法供你自己检索这些数据,这也是 jsoup 保持瘦身的原因。

  • 相关阅读:
    Mysql流程控制语句和存储过程
    第七章 MySQL基础
    第六章 操作数据
    第四章 数据库操作
    第三章 使用MySQL图形化工具
    第二章 初识MySQL
    第一章 数据库基础
    Live555源码学习02 ---- 框架
    Live555源码学习01 ---- 编译
    SRS4.0之RTMP转WebRTC02 ---- RTMP推流到SRS
  • 原文地址:https://www.cnblogs.com/dxgld/p/13531267.html
Copyright © 2011-2022 走看看