私はいくつかの解析を行おうとしていますが、行き詰まっています... HTML の構造は次のとおりです。
<ul class="sub-menu">
<li id="1" class="1"><a href="http://link">SOME TEXT</a>
<ul class="sub-menu">
<li .... ><a ... /></li>
<li .... ><a ... /></li>
<li .... ><a ... /></li>
</ul>
</li>
<li id="2" class="2"><a href="http://link2">SOME OTHER TEXT</a>
<ul class="sub-menu">
<li .... ><a ... /></li>
<li .... ><a ... /></li>
<li .... ><a ... /></li>
</ul>
</li></ul>
各 li (id = 1、2、および s) を取得し、それらの中に lis を取得する必要があります ( <li .... ><a ... /></li>
)。
これが私のJavaの外観です。
// ul contains the source above
Elements lis = ul.select("li"); // I know that this line screws up everything here, but I can't figure out how to do it correctly
for(Element li: lis)
{
String text = li.select("a").first().text();
Elements lis2 = li.select("ul[class=sub-menu]").first().getElementsByTag("li");
for(Element li2: lis2)
{
Element a = li2.select("a").first();
// and other stuff with 'a'
}
}
誰でもこの問題を解決するのを手伝ってもらえますか?
編集:問題は、ul.select("li");
私がここに書いたソースのすべての「li」を返すことです。ID 1、2 などで lis を取得する必要があります。そして、私はそれらを取得する必要があります<li .... ><a ... /></li>
。PS 下手な英語で申し訳ありません。