1. 程式人生 > >Jsoup學習筆記2:Jsoup解析HTML程式碼標籤與屬性

Jsoup學習筆記2:Jsoup解析HTML程式碼標籤與屬性

接著上一篇的Jsoup學習筆記1繼續學習,雖然是轉載自上面連結的文章,但是程式做了一點改動,方便自己以後的檢視

package com.daxiang.myjsoup;

import org.jsoup.Jsoup;  
import org.jsoup.nodes.Document;  
import org.jsoup.nodes.Element;  
import org.jsoup.select.Elements;  
  
public class Jsoup1 {  
    public static void main(String[] args) {  
        StringBuffer buffer=new StringBuffer("<table border=\"1\" align=\"center\">");  
        buffer.append("<tr><td colspan=\"2\" class='td'>電&nbsp;&nbsp;話:</td><td id=\"tel\"></td></tr>");  
        buffer.append("<tr><td colspan=\"2\" class='td'>用&nbsp;&nbsp;戶:</td><td id=\"username\"></td></tr>");  
        buffer.append("<tr><td colspan=\"2\" class='td'><img src=\"images/1.png\"/></td></tr>");  
        buffer.append("</table>");  
        String html=buffer.toString();  
        Document doc=Jsoup.parse(html, "GBK");  
        Elements table=doc.select("table");//選擇table標籤  
        for(Element tab:table){  
            tab.attr("border", "2");//修改table的邊框值  
        }  
         Element td_classfirst = doc.select("td.td").first();   
         td_classfirst.remove();//把第一個td的class=td的樣式的標籤都移除  
     
         Elements pngs = doc.select("img[src$=.png]");// 所有引用 png 圖片的元素  
         for(Element png:pngs){  
             String pngText=png.text();  
             String src=png.attr("src");//根據屬性名獲取src的路徑  
             System.out.println(src+pngText);  
         }  
         
         Element td_classlast = doc.select("td.td").last();   
         td_classlast.remove();//把第最後的一個td的class=td的樣式的標籤都移除  
         
         //在id為tel的td標籤裡面新增一個value等於121212121的值 如:<td id="tel" value="121212121"></td>  
         doc.getElementById("tel").val("121212121");//  
         //在id為tel的td標籤新增一個文字值 如:<td id="tel">121212121</td>  
         doc.getElementById("tel").html("121212121");//  
           
         String newHtml=doc.toString();  
         System.out.println(newHtml);  
    }  
}  
程式執行結果如下:
images/1.png
<html>
 <head></head>
 <body>
  <table border="2" align="center">
   <tbody>
    <tr>
     <td id="tel" value="121212121">121212121</td>
    </tr>
    <tr>
     <td colspan="2" class="td">用  戶:</td>
     <td id="username"></td>
    </tr>
    <tr></tr>
   </tbody>
  </table>
 </body>
</html>