jsoup - การใช้วิธี DOM
ตัวอย่างต่อไปนี้จะแสดงการใช้ DOM เช่นวิธีการหลังจากแยกวิเคราะห์สตริง HTML ในวัตถุเอกสาร
ไวยากรณ์
Document document = Jsoup.parse(html);
Element sampleDiv = document.getElementById("sampleDiv");
Elements links = sampleDiv.getElementsByTag("a");
ที่ไหน
document - วัตถุเอกสารแสดงถึง HTML DOM
Jsoup - คลาสหลักเพื่อแยกวิเคราะห์สตริง HTML ที่กำหนด
html - สตริง HTML
sampleDiv - ออบเจ็กต์องค์ประกอบแสดงถึงองค์ประกอบโหนด html ที่ระบุโดย id "sampleDiv"
links - ออบเจ็กต์ Elements แสดงถึงองค์ประกอบโหนดหลายรายการที่ระบุโดยแท็ก "a"
คำอธิบาย
วิธีการแยกวิเคราะห์ (String html) จะแยกวิเคราะห์ HTML ที่ป้อนเข้าในเอกสารใหม่ อ็อบเจ็กต์เอกสารนี้สามารถใช้เพื่อสำรวจและรับรายละเอียดของ html dom
ตัวอย่าง
สร้างโปรแกรม java ต่อไปนี้โดยใช้โปรแกรมแก้ไขที่คุณเลือกโดยพูดว่า C: /> jsoup
JsoupTester.java
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
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></div>"
+"</body></html>";
Document document = Jsoup.parse(html);
System.out.println(document.title());
Elements paragraphs = document.getElementsByTag("p");
for (Element paragraph : paragraphs) {
System.out.println(paragraph.text());
}
Element sampleDiv = document.getElementById("sampleDiv");
System.out.println("Data: " + sampleDiv.text());
Elements links = sampleDiv.getElementsByTag("a");
for (Element link : links) {
System.out.println("Href: " + link.attr("href"));
System.out.println("Text: " + link.text());
}
}
}
ตรวจสอบผลลัพธ์
รวบรวมคลาสโดยใช้ javac คอมไพเลอร์ดังนี้:
C:\jsoup>javac JsoupTester.java
ตอนนี้เรียกใช้ JsoupTester เพื่อดูผลลัพธ์
C:\jsoup>java JsoupTester
ดูผลลัพธ์
Sample Title
Sample Content
Data: Google
Href: www.google.com
Text: Google