2016-02-29 181 views
1

所以我試圖在HTML文檔中的某個<div>元素內打印文本。Jsoup - 打印element.data()不打印任何東西

由於某種原因,當我打電話給data()方法時,我得到一個空的控制檯。

public class Program 
{ 
    public static void main(String[] args) 
    { 
     System.out.println("Program starts:"); 
     try 
     { 

      Document document2 = Jsoup.connect("http://www.azlyrics.com/lyrics/eminem/mynameis.html").get(); 
      Element element3 = document2.select("div.lyricsh").first(); 

      System.out.println(element3.data()); 
     } 
     catch (IOException e) 
     { 
      e.printStackTrace(); 
     } 
     catch (Exception e) 
     { 
      e.printStackTrace(); 
     } 
    } // End of main method 
} // End of Program class 

我把這個選擇文件英寸它在線150.

我的代碼有什麼問題?謝謝。

回答

1

嘗試System.out.println(element3.text());

data()方法是用於dataNodes,例如如果你想得到<script>標籤的內部。

text()將獲得元素內所有textNodes的(組合)文本。如果您只想要附加到相關元素的文字,您可以使用ownText()

+0

Bingo。隊友的歡呼聲。我會盡我所能接受答案。 – God

+0

你不能接受答案嗎?你能解釋一下你的困難嗎? – luksch

+0

我需要等待15分鐘的時間;)。 – God