我正在尝试解析任何给定页面的HTML转储。我使用HTML Parser并尝试JSoup进行解析。
我在Jsoup中找到了有用的函数,但是在调用Document doc = Jsoup.connect(url).get();
我尝试了HTTPClient,获取了html转储,并且在同一个网址上成功了。
为什么JSoup为同一个URL提供403,它提供来自公共http客户端的内容? 难道我做错了什么?有什么想法吗?
答案 0 :(得分:47)
工作解决方案如下(感谢Angelo Neuschitzer提醒将其作为解决方案):
Document doc = Jsoup.connect(url).userAgent("Mozilla").get();
Elements links = doc.getElementsByTag(HTML.Tag.CITE.toString);
for (Element link : links) {
String linkText = link.text();
System.out.println(linkText);
}
所以, userAgent 可以解决问题:)