2010-04-26 90 views
2

使用Java將網頁的源代碼存儲在字符串中。我想提取源代碼中的所有URL並輸出它們。我對正則表達式之類的東西感到厭煩,不知道如何解決這個問題。任何幫助將不勝感激。使用Java在網頁上查找鏈接

+1

普羅蒂普:不符合正則表達式解析HTML。 – caskey 2010-04-26 23:55:05

回答

6

Don't use regex。使用parser,如JSoup

String html = "your html string"; 
Document document = Jsoup.parse(html); // Can also take an URL. 
for (Element element : document.getElementsByTag("a")) { 
    System.out.println(element.attr("href")); 
} 
4

你可以使用HtmlUnit,然後提取它的簡單的鏈接爲:

WebClient wc = new WebClient(); 
URL url = new URL("http://www.oogly.co.uk/"); 
HtmlPage page = (HtmlPage) wc.getPage(url); 
PrintWriter printWriter = new PrintWriter(new FileWriter(FILE_NAME)); 
List anchors = page.getAnchors(); 
相關問題