【发布时间】:2015-04-02 20:57:52
【问题描述】:
对不起我的英语。我正在使用 Jsoup 从网站中提取用户对手机的评分。速率在 span 标签之间,但没有 class 或 id,为此我使用 span 所在的 div 标签。
for(int j=0; j<=3; j++){
//get page
Document rate = Jsoup.connect("http://www.skroutz.gr/c/40/kinhta-thlefwna.html?order_dir=asc&page=" + j).userAgent("Mozilla").get();
// get rate
Elements phoneRate = rate.select("div[class=rating-wrapper]");
//print all rates
for(int i = 1; i<phoneRate.size(); i++){
System.out.println("Rate: " + phoneRate.get(i).text());
}
}
我得到的结果是这样的:
率:102.9 评分:44 率:00 评分:113.1 评分:43 评分:33.3 率:00 率:15
评分数字在点之前和之后。有没有一种简单的方法可以只提取这些数字。
【问题讨论】:
-
你只想要整数,在前 102 的情况下,而不是 102.9?
-
“点之前和之后”是什么意思?您可以编辑您的问题并为您显示的数据添加您期望的输出吗?
-
您能打印出 phoneRate.get(i).text() 的子字符串而不是整个内容吗?
-
也许你需要像
phoneRate.get(i).text().split("\\.")一样拆分?
标签: java regex string parsing jsoup