【问题标题】:Jsoup - Printing element.data() prints nothingJsoup - 打印 element.data() 什么也不打印
【发布时间】:2016-06-12 20:39:38
【问题描述】:

所以我试图在 HTML 文档中的某个 <div> 元素内打印文本。

由于某种原因,当我调用 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

我将选择器放在这个HTML 文档http://www.azlyrics.com/lyrics/eminem/mynameis.html 中。它在第 150 行。

我的代码有什么问题?谢谢。

【问题讨论】:

    标签: java eclipse css-selectors html-parsing jsoup


    【解决方案1】:

    试试System.out.println(element3.text());

    data() 方法适用于 dataNodes,例如如果您想获取<script> 标记的内部。

    text() 将获得元素内所有textNodes 的(组合)文本。如果您只想要附加到相关元素的文本,您可以使用ownText()

    【讨论】:

    • 宾果游戏。队友的欢呼声。我会尽可能接受答案。
    • 您无法接受答案?你能解释一下你的困难吗?
    • 我需要从发布时间开始等待 15 分钟;)。
    • 啊...我明白了。那以后再做吧:)
    • 顺便说一句。我在Jsoup 中遇到了其他问题。可以给我你的邮箱什么的吗?我还需要 1 个问题。
    猜你喜欢
    • 2014-04-24
    • 1970-01-01
    • 2011-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-04
    • 1970-01-01
    相关资源
    最近更新 更多