使用 JSOUP 从 HTML 获取字符串

Getting Strings from HTML with JSOUP

我需要帮助使用 JSOUP 从 HTML 获取字符串。

文档构建如下:

<body>
   <span class="a-touch">
      <div class"a-container">
         <div class"a-box">
            <div class="a-row a-spacing-small">
              <b>string1</b><br/>string2 97<br/>String3
              <br/>string4</>string5<br/>
          </div>

现在我需要获取字符串。 我用谷歌搜索,但只能找到表格示例等。

以下代码获取 strings 数组,其中包含 a-row div 的文本内容,按换行符拆分:

Document doc = Jsoup.parseBodyFragment(html);
Elements a_row_div = doc.select(".a-row");
String[] strings = Jsoup.clean(a_row_div.html(), "", Whitelist.none(), 
    new OutputSettings().prettyPrint(false)).split("\n");

字符串全部存储在JSoup中的TextNodes中。

使用(Node n : Element.childNodes()集合遍历所有节点。通常唯一相关的节点是 Element 或 TextNode 类型。使用if (n instanceof TextNode)对所有innerText进行测试和操作,if (n instanceof Element)对所有子元素进行递归调用。