我正在實現一個網絡機器人,它必須從頁面獲取所有鏈接並選擇需要的鏈接。除了我遇到了一個鏈接位於「表格」或「跨度」標籤內的探針之外,我已經完成了所有工作。 這裏是我的代碼片段:Jsoup從頁面獲取所有鏈接
Document doc = Jsoup.connect(url)
.timeout(TIMEOUT * 1000)
.get();
Elements elts = doc.getElementsByTag("a");
而這裏的例子HTML:
<table>
<tr><td><a href="www.example.com"></a></td></tr>
</table>
我的代碼將無法獲取等環節。使用doc.select也無濟於事。我的問題是,如何從頁面獲取所有鏈接?
編輯:我想我知道問題在哪裏。我遇到的頁面寫得非常糟糕,HTML驗證器會拋出大量的錯誤。這會導致問題嗎?
對不起,我不明白這句話:「轉儲HTML作爲JSoup使用它(你可以簡單輸出doc.toString())「。你能寫得更清楚嗎? –
打印'文檔'(包含解析的HTML,因爲Jsoup會用它來選擇元素)。通過'System.out.println(doc)'或將其寫入文件。現在你可以檢查你需要的元素。順便說一句。請參閱編輯我的答案(錯過了用選擇器替換getElements)。 – ollo