因此,這裏面臨的挑戰......我需要從隨機網頁中創建乾淨的HTML。我的目標是閱讀一個頁面並將其傳遞給一個圖書館,這個圖書館又可以讓我回到完美的格式化HTML。用於清理HTML的Java庫就像瀏覽器一樣
聽起來不那麼難,對不對?畢竟,市場上的每一款瀏覽器都能有效地應對格式錯誤的HTML的挑戰,並將其轉化爲幾乎每一頁加載的渲染功能。每個人都有自己的清理內容的稍微特別的算法(就像...),但他們往往做的非常好,能捕捉到我喜歡作爲作者意圖的內容。那麼,爲什麼我不能爲這個任務找到一個好的java庫?
有一點要提到的是,我並不想把XML解析爲XML。我發現諸如NekoHTML,TagSoup,HtmlCleaner和JTidy(僅舉幾例)等庫更專注於解決將HTML轉換爲有效的XML的問題,並且在這個過程中,他們忽略了這些糟糕的特性,格式化的文件應該重新構建。由於討厭的HTML,他們經常無法捕捉作者的意圖,並且吐出與原始來源完全不同的文檔。而對於這個項目來說,這兩個文件的渲染是相當重要的。
我很喜歡傑里科的HTML,但它似乎不是這份工作的理想人選......至少在我沒有付出很多努力的情況下。此外,本地依賴是一個不行,所以mozilla解析器已經不存在了。
任何人都可以幫助我尋找完美的HTML解析器嗎?提前致謝!
給我定義格式不正確的HTML ...你一般是指適當的縮進還是隻是格式不正確的HTML。後者的範圍要大得多。 – 2011-05-24 15:48:12
我們肯定在說後者。對於這個項目,我必須拉入一個網頁,應用一些轉換,然後將結果顯示給用戶。如果格式/佈局與預處理的HTML格式明顯不同,那我就麻煩了。 – stevevls 2011-05-24 15:52:02