jsoup 403 错误原因 及 总结

参考网址 :中文http://www.open-open.com/jsoup/

官方:http://jsoup.org/

过多不解释。请参考以上网址.

只是今天用到的时候 一直报错 403 问题。

其实就是没有权限的问题。解决办法:

String url = "http://cn.xxxx.com/xx/xx/";
doc = Jsoup.connect(url).header("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:33.0) Gecko/20100101 Firefox/33.0").get();


而直接获得会报错的:

doc = Jsoup.connect(url).get();


原因:

有些网站的服务器在响应http请求的时候,需要客户端提交的信息比较完善,而在Jsoup的Connection类中这个Header就是完善请求信息用的。

我们的浏览器在请求网页的时候会在请求的头部head中发送一些数据,比如浏览器类型,版本,语言等等。当我们用Jsoup去完成请求网页的工作时,最好也要完善请求包头信息,完成这个工作的就是header方法。

header查看方法:用火狐的 firebug 或google 浏览器看着比较方便 快捷键:F12


及 https 获得方法:

Connection 接口还提供一个方法链来解决特殊请求,具体如下:

Document doc = Jsoup.connect("http://example.com")
  .data("query", "Java")
  .userAgent("Mozilla")
  .cookie("auth", "token")
  .timeout(3000)
  .post();

这个方法只支持Web URLs (http和https 协议。



你可能感兴趣的:(jsoup,java)