常见的爬虫error以及解决方法

connection error

  • ConnectionError:(‘Connection aborted’,error(110,‘Connection timed out’))
    解决方法: 例如http://dxsbb.com。就会出现这种问题,那就在前边加上www,我访问之后成功了。
  • ConnectionError:(‘Connection aborted’,error(111,‘Connection refused’))
    解决方法: 我使用的域名是:https://qj.com.cn。停一段时间再次访问,或者使用requests请求试一下,就可以了。
  • ConnectionError:(‘Connection aborted’,error(104,‘Connection reset by peer’))
    **解决方法:**http://laod.cn .可以加上www,之后再请求的时候加上requests的headers,其中最重要的就是User-Agent,Cookie,Host,refer。自己用requests访问的话响应的时间太长。
  • ConnectionError:(‘Connection aborted’,gaierror(-2,‘Name or service not known’))
    解决方法: 域名解析器无法解析,不是域名的问题,就是解析不了。
  • ConnectionError:(‘Connection aborted’,BadStatusLine(" ’ '"))
    解决方法: 加上headers

ssl error

  • SSLError: EOFoccured in violation of protocol (_ssl.c579)
    *出现问题的域名: https://www.htcmania.com/portal.php,
    或者以index.html结尾的, 一种方法是去掉。否则就是https的不好爬取。

DNS Lookup Error

  • Dns lookup failed: no results for hostname lookup: miitbeian.gov.cn
    出现问题的域名: http://clickbank.net.加上www取请求,就是403Forbidden的错误。

Tcp time out

  • TCPTimedOutError: Tcp connection timed out: 110: Connection timed out
    出现问题的域名: http://dollartree.com
    这种就是停一段时间再次爬取。

Reponse Error

  • NotSupported:Response context isn’t text
    出现错误的域名: http://cityadspix.com(网页没有问题),有可能网页的主页是图片或者其他格式,所以无法保存
    可以对response的body进行判断,看/>是否会再页面中出现

总结:

1.首先是headers,加上User-Agent。
2. 在域名上加上www。
3. 网页主页是否是图片、视频。这种模式的需要进行判断
4. 网页是403Forbbiden的,无法爬取。

最后贴上一个User-Agent

{'User-Agent': 'Mozilla/5.0 (Windows NT 6.0; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0'}

你可能感兴趣的:(爬虫,爬虫)