zoukankan      html  css  js  c++  java
  • urllib2.HTTPError: HTTP Error 403: Forbidden的解决方案

    在使用python爬取网络爬虫时,经常会以为目标网站因为禁止爬取网络爬虫而出现403 Forbidden的错误

    问:为什么会出现403 Forbidden的错误
    答:出现urllib2.HTTPError: HTTP Error 403: Forbidden错误的原因主要是由于目标网站禁止爬虫导致的,可以在请求加上请求头信息.

    问:那么应该如何解决呢?
    答:只要模拟正常浏览器上网即可,比如添加一个headers

    req = urllib.request.Request(url="http://en.wikipedia.org"+pageUrl)
    html = urlopen(req)

    在req中添加一个headers,使其变为

     headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0'}
        req = urllib.request.Request(url="http://en.wikipedia.org"+pageUrl, headers=headers)
        # req = urllib.request.Request(url="http://en.wikipedia.org"+pageUrl)
        html = urlopen(req)

    问:headers如何查找?
    答:可以利用在浏览器开发者工具中的网络查找,比如火狐浏览器通过火狐浏览器查找请求头信息

    问:伪装成浏览器还会不会出现其他问题?
    答:会,比如目标网站会封掉查询次数过多ip地址

  • 相关阅读:
    查看Linux内核版本命令
    身份证测试用
    aaa
    aaaaaaaaaaaaaaa
    https
    httpclient调用https
    共阴极数码管编码
    时间单位换算
    Java 中System里getProperty(something)
    VM arguments
  • 原文地址:https://www.cnblogs.com/fonttian/p/7294845.html
Copyright © 2011-2022 走看看