我正在尝试解析任何给定页面的 HTML 转储。我使用了HTML Parser,还尝试了 JSoup进行解析。
我在 Jsoup 中找到了有用的函数,但在调用时出现 403 错误Document doc = Jsoup.connect(url).get();
我尝试了 HTTPClient,以获取 html 转储,并且对于相同的 url 是成功的。
为什么 JSoup 为从 commons http 客户端提供内容的同一 URL 提供 403?难道我做错了什么?有什么想法吗?
我正在尝试解析任何给定页面的 HTML 转储。我使用了HTML Parser,还尝试了 JSoup进行解析。
我在 Jsoup 中找到了有用的函数,但在调用时出现 403 错误Document doc = Jsoup.connect(url).get();
我尝试了 HTTPClient,以获取 html 转储,并且对于相同的 url 是成功的。
为什么 JSoup 为从 commons http 客户端提供内容的同一 URL 提供 403?难道我做错了什么?有什么想法吗?
工作解决方案如下(感谢 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 成功了:)