我正在尝试进行一些解析,但我被卡住了……这是 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对不起我的英语不好。