JSoup教學


JSoup是一個用於處理HTML的Java庫,它提供了一個非常方便類似於使用DOM,CSS和jquery的方法的API來提取和運算元據。

jsoup實現WHATWG HTML5規範,並將HTML解析為與現代瀏覽器相同的DOM。

  • 從URL,檔案或字串中提取並解析HTML。
  • 查詢和提取資料,使用DOM遍歷或CSS選擇器。
  • 操縱HTML元素,屬性和文字。
  • 根據安全的白名單清理使用者提交的內容,以防止XSS攻擊。
  • 輸出整潔的HTML。

jsoup旨在處理發現所有格式有差異的HTML; 從原始和驗證,到無效的標籤; jsoup將建立一個明智的解析樹。

範例

獲取維基百科主頁,解析為DOM,並從新聞部分中選擇標題列入元素列表:

Document doc = Jsoup.connect("http://en.wikipedia.org/").get();
Elements newsHeadlines = doc.select("#mp-itn b a");

以下是一個完整的範例,在這個範例中,它提取易百教學網首頁的title標籤中的字串符。

import java.io.IOException;  
import org.jsoup.Jsoup;  
import org.jsoup.nodes.Document;  
public class FirstJsoupExample{  
    public static void main( String[] args ) throws IOException{  
                Document doc = Jsoup.connect("https://www.tw511.com").get();  
                String title = doc.title();  
                System.out.println("title is: " + title);  
    }  
}

開源

jsoup是一個根據自由MIT許可證分發的開源專案。 原始碼可在GitHub獲得:http://github.com/jhy/jsoup/

發展和支援

如果您有任何關於如何使用jsoup的問題,或有未來發展的想法,請通過郵寄清單聯絡( http://jsoup.org/discussion )。

如果您發現任何問題,請在檢查重複之後提交錯誤。

本教學問題

在本Jsoup教學中,我們是通過一些簡單的開發和測試範例來一步步演示Jsoup的使用的,但是由於開發環境和工具的不同,我們不能保證所有範例均可在您的機器也能正常執行。 如果您在本教學中發現任何問題或錯誤,可以向我們報告。我們及時修改/修正錯誤以方便後來的學習者。