这是我要解析的html:
<div class="entry">
<img src="http://www.example.com/image.jpg" alt="Image Title">
<p>Here is some text</p>
<p>Here is some more text</p>
</div>
我想将
<p>
中的文本放入一个ArrayList中。我已经尝试过使用Jsoup。Document doc = Jsoup.parse(line);
Elements descs = doc.getElementsByClass("entry");
for (Element desc : descs) {
String text = desc.getElementsByTag("p").first().text();
myArrayList.add(text);
}
但这根本不起作用。我对Jsoup很陌生,但似乎有其局限性。如果我可以使用Jsoup将
<p>
中的文本放入一个ArrayList中,该如何实现?如果我必须使用其他方法来解析html,请告诉我。我正在使用
BufferedReader
一次读取html文件。 最佳答案
您可以将方法更改为以下内容:
Document doc = Jsoup.parse(line);
Elements pElems = doc.select("div.entry > p");
for (Element pElem : pElems) {
myArrayList.add(pElem.data());
}