由于是使用流获取到的页面源代码,所以是没有页面的,也就无法使用jQuery跟js了。
//转化流
Parser parser =Parser.createParser(str1, "utf-8");
//获取span 所有
NodeList spanend = parser.extractAllNodesThatMatch(filter_spanlist);
//获取内容
System.out.println(spanend.toHtml().replaceAll(" ", "").replace("\n", "").replace("\t", ""));
结果:<spanclass="detail-cx-txt2newcolor">免费</span>
如何才能获取到 "免费" ? 请用纯java代码,谢谢。
substring(indexOf('>')+1,indexOf('</span>'))
先引入jquery
然后使用: $(".detail-cx-txt2newcolor").text();
即可获取到span的值
jquery轻松获取的.
jquery写法:
$(".detail-cx-txt2newcolor").text();
JS写法:
$(".content")[0].firstChild.data
导入了htmlparser.jar包
再通过一下代码实现了 内容的获取
Parser parser = Parser.createParser(str1, "utf-8");
// 获取span 所有
NodeList spanend = parser
.extractAllNodesThatMatch(filter_spanlist);
// System.err.println("============================"+spanend.size());//获取节点的个数
// 获取内容
String s = spanend.toHtml().replaceAll(" ", "")
.replace("\n", "").replace("\t", "");
System.out.println(s);
Pattern pattern = Pattern.compile(">(.*?)</span>");
Matcher matcher = pattern.matcher(s);
String s1 = "";
while (matcher.find()) {
s1 = matcher.group(1);
}