我正在使用jsoup进行webscraping并遇到了另一个问题。我需要信息的div没有类,id或任何特殊指示。它被埋在页面中。这是:
<div class="column">
<div class="form-label">Rate: </div>
<div>11.082/11.167</div>
<div class="form-label padding-top">High/Low: </div>
<div>1005.0/0.0004</div>
</div>
我需要获得第一组数字,但我不确定如何告诉jsoup我特别想要它们;有没有人有任何建议?
答案 0 :(得分:1)
class="column"
Rate:
对不起代码格式化不起作用o.0
public String getRage(Document document) {
for(Element e : document.getElementsByClass("column")) {
if(e.getElementsByTagName("div").get(0).ownText().equals("Rate: ")) {
return e.getElementsByTagName("div").get(1).ownText();
}
}
return null;
}
答案 1 :(得分:1)
假设doc
是您的Document对象......
doc.select('.column > div:eq(1)');
应该完成这项工作,你基本上按类选择父div,然后获取所有子div,但过滤子div,以便返回索引1处的元素(这是一个基于零的索引,所以索引1是第二个元素)
就个人而言,我会切换到jQuery,因为它使用了更好的选择器引擎,但每个都是他们自己的......