jsoup - Trích xuất HTML

Ví dụ sau sẽ giới thiệu cách sử dụng các phương thức để lấy html bên trong và html bên ngoài sau khi phân tích cú pháp một Chuỗi HTML thành một đối tượng Tài liệu.

Cú pháp

Document document = Jsoup.parse(html);
Element link = document.select("a").first();         

System.out.println("Outer HTML: " + link.outerHtml());
System.out.println("Inner HTML: " + link.html());

Ở đâu

  • document - đối tượng tài liệu đại diện cho HTML DOM.

  • Jsoup - lớp chính để phân tích cú pháp chuỗi HTML đã cho.

  • html - Chuỗi HTML.

  • link - Đối tượng phần tử đại diện cho phần tử nút html đại diện cho thẻ neo.

  • link.outerHtml() - Phương thức externalHtml () truy xuất lại phần tử html hoàn chỉnh.

  • link.html() - Phương thức html () truy xuất lại phần tử bên trong html.

Sự miêu tả

Đối tượng phần tử đại diện cho một phần tử dom và cung cấp nhiều phương thức khác nhau để lấy html của phần tử dom.

Thí dụ

Tạo chương trình java sau bằng bất kỳ trình soạn thảo nào bạn chọn trong 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>"
         + "<p>Sample Content</p>"
         + "<div id='sampleDiv'><a href='www.google.com'>Google</a>"
         + "<h3><a>Sample</a><h3>"
         +"</div>"
         +"</body></html>";
      Document document = Jsoup.parse(html);

      //a with href
      Element link = document.select("a").first();         

      System.out.println("Outer HTML: " + link.outerHtml());
      System.out.println("Inner HTML: " + link.html());
   }
}

Xác minh kết quả

Biên dịch lớp bằng cách sử dụng javac trình biên dịch như sau:

C:\jsoup>javac JsoupTester.java

Bây giờ hãy chạy JsoupTester để xem kết quả.

C:\jsoup>java JsoupTester

Xem kết quả.

Outer HTML: <a href="www.google.com">Google</a>
Inner HTML: Google