从Div标签获取文本

我有一个带有多个div标签的主Div标签,如下所示。 子Div标签没有与其他子div标签区分的class / id。 现在我想从第二个子Div标签中提取文本值。 我怎样才能做到这一点?

This is a monster
Monster in Black

我想得到“黑衣怪物”的文字。 这个Div没有id / name,也不确定这个样式是相同还是变化。 我将如何使用jSoup提取?

 package stackoverflow; import java.io.IOException; import java.io.InputStream; import org.apache.commons.io.IOUtils; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; public class JSoupTest { public static void main(String[] args) throws IOException { InputStream in = JSoupTest.class.getResourceAsStream("JSoupTest.txt"); String html = IOUtils.toString(in); Document doc = Jsoup.parse(html); Elements divs = doc.select("DIV"); System.out.println(divs); Element div = divs.get(2); System.out.println("Monster in Black".equals(div.text())); } } 

生产:

 
This is a monster
Monster in Black
This is a monster
Monster in Black
true

您可以使用以下代码实现:

 Document doc = Jsoup.parse(new File("test.html"), "utf-8"); Elements select = doc.select("div > div:eq(1)"); System.out.println(select.text()); 

有关Selector的详细信息,请查看此javadoc

使用jquery

     
This is a monster
Monster in Black
HainKurt
Just joined to SO!