我正在尝试使用此代码来读取网页中的内容, 我想阅读链接下面的链接,作者姓名以及右侧的PDF或HTML链接到我的数据库或使用Java的一些doc文件。
import java.io.IOException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class HTMLParserExample1 {
public static void main(String[] args) {
Document doc;
try {
// need http protocol
doc = Jsoup.connect("http://scholar.google.com/scholar? l=en&q=visualization&btnG=&as_sdt=1%2C4&as_sdtp=").userAgent("Chrome").get();
Element content = doc.getElementById("content");
Elements links = content.getElementsByTag("a");
for (Element link : links) {
String linkHref = link.attr("href");
String linkText = link.text();
System.out.println("\nLinHREF: "+linkHref);
System.out.println("linktext: "+linkText);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
上面是我的代码,之前它给了我403错误,但是当我把useragent(“Mozilla”),然后它给我空指针异常。
Exception in thread "main" java.lang.NullPointerException
at HTMLParserExample1.main(HTMLParserExample1.java:20)
Java Result: 1
BUILD SUCCESSFUL (total time: 1 second)
请帮忙。
答案 0 :(得分:1)
如果我从网址中删除空格,它对我有用
http://scholar.google.com/scholar?l=en&q=visualization&btnG=&as_sdt=1%2C4&as_sdtp=
很好。我强烈建议您使用Google API进行直接谷歌解析的网络搜索。
Here some info about Gdata API