jsoup - 设置 HTML



以下示例将展示一种方法的使用,该方法可在将 HTML 字符串解析成 Document 对象后,设置、添加或附加 HTML 到 DOM 元素。

语法

Document document = Jsoup.parse(html);
Element div = document.getElementById("sampleDiv");     
div.html("<p>This is a sample content.</p>");   
div.prepend("<p>Initial Text</p>");
div.append("<p>End Text</p>");   

其中

  • document - document 对象表示 HTML DOM。

  • Jsoup - 用于解析给定 HTML 字符串的主类。

  • html - HTML 字符串。

  • div - Element 对象表示表示锚点标签的 HTML 节点元素。

  • div.html() - html(content) 方法使用对应值替换元素的外层 html。

  • div.prepend() - prepend(content) 方法将内容添加到外部 html 前。

  • div.append() - append(content) 方法将内容添加到外部 html 后。

描述

Element 对象表示一个 DOM 元素,并提供各种方法来设置、添加或附加 HTML 到 DOM 元素。

示例

使用你所选择的任意编辑器创建一个以下 java 程序,比如 C:/> jsoup。

JsoupTester.java

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;

public class JsoupTester {
   public static void main(String[] args) {
   
      String html = "<html><head><title>Sample Title</title></head>"
         + "<body>"
         + "<div id='sampleDiv'><a id='googleA' href='www.google.com'>Google</a></div>"
         +"</body></html>";
      Document document = Jsoup.parse(html);

      Element div = document.getElementById("sampleDiv");
      System.out.println("Outer HTML Before Modification :\n"  + div.outerHtml());
      div.html("<p>This is a sample content.</p>");
      System.out.println("Outer HTML After Modification :\n"  + div.outerHtml());
      div.prepend("<p>Initial Text</p>");
      System.out.println("After Prepend :\n"  + div.outerHtml());
      div.append("<p>End Text</p>");
      System.out.println("After Append :\n"  + div.outerHtml());          
   }
}

验证结果

使用如下 javac 编译器编译类

C:\jsoup>javac JsoupTester.java

现在运行 JsoupTester 以查看结果。

C:\jsoup>java JsoupTester

查看结果。

Outer HTML Before Modification :
<div id="sampleDiv">
 <a id="googleA" href="www.google.com">Google</a>
</div>
Outer HTML After Modification :
<div id="sampleDiv">
 <p>This is a sample content.</p>
</div>
After Prepend :
<div id="sampleDiv">
 <p>Initial Text</p>
 <p>This is a sample content.</p>
</div>
After Append :
<div id="sampleDiv">
 <p>Initial Text</p>
 <p>This is a sample content.</p>
 <p>End Text</p>
</div>
Outer HTML Before Modification :
<span>Sample Content</span>
Outer HTML After Modification :
<span>Sample Content</span>
广告