如何使用jsoup提取html标记外部的文本?

如何使用jsoup提取html标记外部的文本?,html,jsoup,Html,Jsoup,我有以下HTML代码: Data <div class="alg"></div> <div class="alg"></div> Pepsi 791 <div class="alg"></div> <div class="alg"></div> Coke 700

我有以下HTML代码:

    Data                       


    <div class="alg"></div>
    <div class="alg"></div>





    Pepsi
    791



    <div class="alg"></div>
    <div class="alg"></div>


    Coke
    700



    <div class="gap"></div>
    <div class="gap"></div>
但是上面的代码总是打印“”空字符串。

试试这个:

Document doc = Jsoup.parse(url, 30000);
for( Element element : doc.select(".gap") ) { // Select all the div tags
    Node next = element.nextSibling();
    StringBuffer sb = new StringBuffer();
    while (next instanceof TextNode) {
        sb.append(((TextNode)next).text());
        next = next.nextSibling();
    }
    System.out.println(sb.toString()); // Print the text of the TextNode
}

我在我的mac电脑上做了一个测试,看起来你的代码工作正常。您加载了什么HTML文件?@ThanhTRANCONG我从服务器下载了HTML文件并将其传递给jsoup。jsoup的不同版本会发生这种情况吗?我的是1.8.3,你的是什么?我的是1.9.2,我也在我的mac电脑上试过,我能调试一下吗?你能给我发送下载html文件的链接吗?
Document doc = Jsoup.parse(url, 30000);
for( Element element : doc.select(".gap") ) { // Select all the div tags
    Node next = element.nextSibling();
    StringBuffer sb = new StringBuffer();
    while (next instanceof TextNode) {
        sb.append(((TextNode)next).text());
        next = next.nextSibling();
    }
    System.out.println(sb.toString()); // Print the text of the TextNode
}