2015-04-17 76 views
0

我需要用Java解析HTML頁面來檢索一些數據。用Java解析HTML

例如,從incoming.html

<html> 
<head> 
    <title>TITLE</title> 
    <meta name="some name" content="some content" /> 
    <link type=".." title=".." rel=".." href="link" /> 
    <script type="text/javascript">..</script> 
</head> 
    <body> 
     <!--googleoff:all--> 
    <img src="image.jpg"/> 
    <div class="div1"></div> 
    <div class="Logo"><a href="/"><img src="logo.png"/></a></div> 
    <div class="div2"></div> 
    <ul> 
     <li class=".."><a href="/」>a</a></li> 
     <li class=".."><a href="/」>b</a></li> 
    </ul> 

    <div class="div1"></div> 
    <div class="Logo"><a href="/"><img src="other.png"/></a></div> 
    <div class=」div2」></div> 

    <ul> 
     <li class=".."><a href="/」>a</a></li> 
     <li class=".."><a href="/」>b</a></li> 
    </ul> 
     <!--googleon:all--> 
    </body> 
</html> 

我需要接受outcoming.html

<html> 
<head> 
    <title>TITLE</title> 
    <meta name="some name" content="some content" /> 
    <link type=".." title=".." rel=".." href="link" /> 
    <script type="text/javascript">..</script> 
</head> 
<body> 
    <div class="Logo"><a href="/"><img src="other.png"/></a></div> 
    <div class=」div2」></div> 
</body> 
</html> 

問題的目的:

如何從2選擇等於標記,只有他們的內容有區別。

在我的情況,我有兩個標籤:

<div class="Logo"><a href="/"><img src="logo.png"/></a></div> 

<div class="Logo"><a href="/"><img src="other.png"/></a></div> 

,但我只需要標籤,其中src="other.png"

你認爲做的最好方法是什麼?

+6

看看[JSoup](http://jsoup.org/) –

+1

你到目前爲止嘗試了什麼? –

+0

您的HTML樣本對我沒有意義。你想用他們做什麼? – JonasCz

回答

2

您可以使用庫JSoup。

這裏是鏈接http://jsoup.org/

這是非常簡單易用。這裏有個簡單的例子。

String html = "<div><p>Lorem ipsum.</p>"; 
Document doc = Jsoup.parseBodyFragment(html); 
Element body = doc.body();