我想从一个div类中提取数据,但是它显示了我希望逐个获取数据项的整个字符串。
Document doc = Jsoup.parse(get_html);
String Title = doc.getElementsByClass("jTit").text();
String CoName = doc.getElementsByClass("coName").text();
System.out.println(Title);
System.out.println(CoName);
答案 0 :(得分:0)
您显然拥有指定类的多个元素,getElementsByClass会返回包含所有Elements的集合。所以你可能想要提取每个文本,因为你需要遍历这个集合,获取每个元素,然后从中获取文本。
这是一个例子
public class JsoupTest {
@Test
public void getTextByClass() {
String html = "<html>\r\n" +
" <body>\r\n" +
" <div class=\"jTit\">jtit 1</div>\r\n" +
" <div class=\"coName\">coname 1</div>\r\n" +
" <div class=\"foo\">foo</div>\r\n" +
" <div class=\"coName\">coname 2</div>\r\n" +
" <div class=\"jTit\">jtit 2</div>\r\n" +
" <div class=\"bar\">bar</div>\r\n" +
" </body>\r\n" +
"</html>";
Document doc = Jsoup.parse(html);
Elements jTitElements = doc.getElementsByClass("jTit");
for(Element e : jTitElements) {
System.out.println(e.text());
}
Elements coNameElements = doc.getElementsByClass("coName");
for(Element e : coNameElements) {
System.out.println(e.text());
}
}
}
打印:
jtit 1
jtit 2
coname 1
coname 2