如何将字符串转化为Jsoup的Document 对象

有些时候在java操作解析html元素的时候比较繁琐,今天螃蟹就介绍一种可将html转换为document对象的方法——jsoup

jsoup为我们解析html提供了比较全的API接口,我们通过将html转换为document对象后,在java中便可以形同写html标签一般进行元素的解析、属性的获取。

首先看一个例子:

String html="<html><header></header><body>

<div>hello world</div>

</body><html/>";


这是提供的html文本,在转换成document对象后,我们要获取a链接的地址及文本:
代码如下:


    1. /**   
    2.  * 文件名:Chapter1.java   
    3.  *    
    4.  * 日期:2015年7月12日   
    5.  *   
    6.  */  
    7.   
    8.  
    9. import org.jsoup.Jsoup;  
    10. import org.jsoup.nodes.Document;  
    11. import org.jsoup.nodes.Element;  
    12. import org.jsoup.select.Elements;  
    13.   
    14. /** 
    15.  *  
    16.  *
    17.  *  
    18.  *
    19.  * 
    20.  * @version: 2015年7月12日 下午4:55:41 
    21.  */  
    22.   
    23. public class Chapter1 {  
    24.   
    25.     /** 
    26.      * @author: IT学习者 
    27.      *
    28.      *  
    29.      * @version: 2015年7月12日 下午4:55:42 
    30.      */  
    31.     public static void main(String[] args) {  
    32.         String html = "<html><head><title>IT学习者</title></head>"  
    33.   
    34.         + "<body><div id="content">"  
    35.                 + "<a href='> IT学习者官网 </a>"  
    36.                 + "<a href=''> IT学习者论坛 </a>"  
    37.                 + "</div></body></html>";  
    38.   
    39.         Document doc = Jsoup.parse(html);  
    40.         Element content = doc.getElementById("content");  
    41.         Elements links = content.getElementsByTag("a");  
    42.   
    43.         for (Element link : links) {  
    44.             String linkHref = link.attr("href");  
    45.             String linkText = link.text();  
    46.             System.out.println("linkHref:" + linkHref);  
    47.             System.out.println("linkText:" + linkText);  
    48.         }  
    49.     }  
    50. }  
原文地址:https://www.cnblogs.com/qianzf/p/7749478.html