2

特定のタグを含む HTML ファイルがあります。たとえば<TABLE cellspacing=0>、終了タグは</TABLE>です。これらのタグの間のすべてを取得したいと思います。Java で Jericho HTML パーサーを使用して HTML を解析しています。Jericho パーサーで特定のタグ間のテキストとその他のタグを取得することは可能ですか?

例えば:

<TABLE  cellspacing=0>    
  <tr><td>HELLO</td>  
  <td>How are you</td></tr>
</TABLE>

答え:

<tr><td>HELLO</td>  
<td>How are you</td></tr> 
4

2 に答える 2

2

テーブルの要素を見つけたら、あとは getContent().toString() を呼び出すだけです。サンプル HTML を使用した簡単な例を次に示します。

Source source = new Source("<TABLE  cellspacing=0>\n" +
    "  <tr><td>HELLO</td>  \n" +
    "  <td>How are you</td></tr>\n" +
    "</TABLE>");

Element table = source.getFirstElement();
String tableContent = table.getContent().toString();

System.out.println(tableContent);

出力:

    <tr><td>HELLO</td>  
    <td>How are you</td></tr>
于 2011-04-11T18:51:19.677 に答える
0

Aby、私はすべての要素のコードをたどり、画面に表示します。多分あなたを助けます。

        List<Element> elementListTd = source.getAllElements(HTMLElementName.TD);

        //Scroll through the list of elements "td" page
        for (Element element : elementListTd) {
            if (element.getAttributes() != null) {
                String td = element.getAllElements().toString();
                String tag = "td";
                System.out.println("TD: " + td);
                System.out.println(element.getContent());
                String conteudoAtributo = element.getTextExtractor().toString();
                System.out.println(conteudoAtributo);

                if (td.contains(palavraCompara)) {
                    tabela.add(conteudoAtributo);
                }

            }
于 2011-06-09T12:48:40.513 に答える