Java 通过JSOUP提取元素的数据
我想从一个div类中提取数据,但它显示了我想要逐个获取数据项的整个字符串Java 通过JSOUP提取元素的数据,java,html,jsoup,Java,Html,Jsoup,我想从一个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); 显然,指定类中有
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);
显然,指定类中有多个元素,返回包含所有这些元素的集合。因此,您可能希望提取每个元素的文本,为此,您需要迭代此集合,获取每个元素,然后从中获取文本 这里有一个例子
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());
}
}
}
你所说的数据是什么意思?您能添加一个示例XML和预期输出吗?
jtit 1
jtit 2
coname 1
coname 2