HTTP Error 403: Forbidden

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTTP Error 403: Forbidden相关的知识,希望对你有一定的参考价值。

在写网页爬虫的时候,有的网站会有反爬取措施,所以有可能出现上面所示bug

出现bug的地方可能有两处:

1. requests请求时

  requests.get(url),返回结果是403。

  解决方法:

  headers= {

      ‘User-Ageent‘:‘一些字符‘,

      ‘Cookie‘:‘一些字符‘

   }

  requests.get(url, headers=headers),

  此时返回结果应该就是200,正常。加入headers的目的是,模拟人的行为,让服务器认为是人在操作,

  User-Agent, Cookie可以查看网页requests,即可查明,不同网页,Cookie不同

2. urlretrieve下载东西时

  解决方法:

 import urllib.request

opener=urllib.request.build_opener()
opener.addheaders=[(‘User-Agent‘,‘Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/36.0.1941.0 Safari/537.36‘)]
urllib.request.install_opener(opener)

url=‘‘
local=‘‘
urllib.request.urlretrieve(url,local)

  原理还不是很清楚,在stackoverflow上找到的,结果正确。

以上是关于HTTP Error 403: Forbidden的主要内容,如果未能解决你的问题,请参考以下文章

Python 3.x HTTP Error 403: Forbidden

HTTP Error 403: Forbidden

urllib.error.HTTPError: HTTP Error 403: Forbidden

urllib.error.HTTPError: HTTP Error 403: Forbidden

Python "HTTP Error 403: Forbidden"

urllib2.HTTPError: HTTP Error 403: Forbidden 解决方法