Jsoup學習筆記2:Jsoup解析HTML程式碼標籤與屬性
阿新 • • 發佈:2019-01-23
接著上一篇的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'>電 話:</td><td id=\"tel\"></td></tr>"); buffer.append("<tr><td colspan=\"2\" class='td'>用 戶:</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>