1
我正在尝试在Google新闻中为所有标题刮掉最新报道部分。为了只获得在最新新闻部分的标题,我必须缩小到本文标签:如何使用Jsoup按ID查找元素?
<div class="section top-stories-section" id=":2r">..</div>
这是我使用(在Eclipse)代码:
public static void main(String[] args) throws IOException {
// fetches & parses HTML
String url = "http://news.google.com";
Document document = Jsoup.connect(url).get();
// Extract data
Element topStories = document.getElementById(":2r").;
Elements titles = topStories.select("span.titletext");
// Output data
for (Element title : titles) {
System.out.println("Title: " + title.text());
}
}
我似乎总是得到一个NullPointerException。它也不起作用,当我试图达到这样的热门新闻:
Element topStories = document.select("#:2r").first();
我错过了什么吗?这不应该工作吗?我对此比较陌生,请帮忙,谢谢!
谢谢!这样可行。但有两个问题:该div标记如何不包含id属性(它清楚地表明'id =“:2r”')?为什么如果整个班级名称是“部分顶级报道部分”而不仅仅是“顶级报道部分”,那么这种方法会起作用?我对此很陌生,所以我对学习很感兴趣。不过谢谢你! –
如上所述,原来的错误表明它不能找到':2r'这个元素,所以不知道你最初是从哪里得到的。 2)只能用于任何一个CSS类。已更新一起显示2班 - 更正确:) – Reimeus