zoukankan      html  css  js  c++  java
  • org.jsoup.HttpStatusException: HTTP error fetching URL. Status=403

    爬取网站的时候 conn = Jsoup.connect(url).timeout(5000).get();直接用get方法,有些网站可以正常爬取。

    但是有些网站报403错误,403是一种在网站访问的过程中,常见的错误提示。表示资源不可用,服务器理解客户对的请求,但是拒绝处理它,通常由服务器上文件或者目录的权限设置导致的web访问错误。

    解决方法无非就是从这几个角度:useragent,referer,token,cokkie

    所以我们给连接添加模拟浏览器的header:

    1. <span style="white-space:pre;">         </span>conn = Jsoup.connect(url).timeout(5000);  
    2.             conn.header("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8");  
    3.             conn.header("Accept-Encoding", "gzip, deflate, sdch");  
    4.             conn.header("Accept-Language", "zh-CN,zh;q=0.8");  
    5.             conn.header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36");  

    然后再执行conn.get()

    就可以得到数据了。

  • 相关阅读:
    LeetCode Best Time to Buy and Sell Stock
    LeetCode Scramble String
    LeetCode Search in Rotated Sorted Array II
    LeetCode Gas Station
    LeetCode Insertion Sort List
    LeetCode Maximal Rectangle
    Oracle procedure
    浏览器下载代码
    Shell check IP
    KVM- 存储池配置
  • 原文地址:https://www.cnblogs.com/qianzf/p/9050875.html
Copyright © 2011-2022 走看看