2010-08-14 23 views
0

錨標籤讀取裏面的href我有一個HTML網頁摘要:使用Java

<a href="XXXXXXXXXXXXXXX" target="_blank" class="view_job_link">View or apply to job</a> 

我想讀的使用Java href的值XXXXXXXXXX。

需要注意的是:我正在使用inputstreamreader(url.openStream())從URL中讀取HTML文件。

我得到一個完整的HTML文件,上面的代碼片段是該文件的一部分。

我該怎麼做?

感謝

Karunjay阿南德

+1

我注意到你標記了你的問題'正則表達式'。請閱讀這個。 http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags – Amber 2010-08-14 17:52:08

+0

可能的重複[Java:我有一個大的html字符串,需要解壓縮href = 「...」text ...](http://stackoverflow.com/questions/1670593/java-i-have-a-big-string-of-html-and-need-to-extract-the-href -text) – kennytm 2010-08-14 17:53:19

回答

3

使用像Jsoup這樣的html解析器。該API是簡單易學,你的情況下,下面的代碼片段會做

URL url = new URL("http://example.com/"); 
Document doc = Jsoup.parse(url, 3*1000); 
Elements links = doc.select("a[href]"); // a with href 
for (Element link : links) { 
    System.out.println("Href = "+link.attr("abs:href")); 
} 
+0

你也可以使用'link.absUrl(「href」)'。 – BalusC 2010-08-14 18:17:19

1

使用HTML解析器像TagSoup或類似的東西。

0

您可以使用Java本身的HtmlEditorKit解析HTML。這樣你就不需要依賴任何第三方的html解析器。 Here是如何使用它的一個例子。