[英]Use JSoup to get all textual links
我正在使用JSoup從網頁中獲取內容。
我想獲取頁面上所有包含某些文本(無論文本是什么)的鏈接,只需要將其為非空/圖像等即可。
我想要的鏈接示例:
<a href="somepage.html">Link to Some Page</a>
由於它包含文本“鏈接到某些頁面”
我不想要的連結:
<a href="somepage.html"><img src="someimage.jpg"/></a>
<a href="somepage.html"></a>
我的代碼如下所示。 如何修改它以僅獲取第一類鏈接?
Document document = // I get my document object
Elements linksOnPage = document.select("a[href]")
for (Element page : linksOnPage) {
String link = page.attr("abs:href");
// I do stuff with the link
}
你可以做這樣的事情。 它確實可以做到,盡管它可能不是目前最完美的解決方案。
注意:函數text()
會為您提供純文本,因此,如果其中包含HTML代碼片段,它將不會返回它們。
Document doc = // get the doc
Elements linksOnPage = document.select("a");
for (Element pageElem : linksOnPage){
String link = "";
if(pageElem.text().trim().equals(""))
continue;
// do smth with it
}
我正在使用它,並且工作正常:
Document document = // I get my document object
Elements linksOnPage = document.select("a:matches(([^\\s]+))");
for (Element page : linksOnPage) {
String link = page.attr("abs:href");
// I do stuff with the link
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.