3.爬虫异常处理——状态码

  1. 云栖社区>
  2. 博客>
  3. 正文

3.爬虫异常处理——状态码

wsc449 2018-02-08 00:12:14 浏览536
展开阅读全文
#python爬虫的异常处理
#爬虫遇到异常时就会直接崩溃停止运行,下次再运行时,又会从头开始。
#开发一个具有顽强生命力的爬虫,必须要进行异常处理。

#常见状态码以及含义
#301 Moved Permanently:重定向到新的URL,永久性
#302 Found:重定向到临时的URL,非永久性
#304 Not Modified:请求的资源未更新
#400 Bad Request:非法请求
#401 Unauthorized:请求未经授权
#403 Forbidden:禁止访问
#404 Not Found:没有找到对应页面
#500 Internal Server Error:服务器内部出现错误
#501 Not Implemented:服务器不支持实现请求所需要的功能

#异常处理的两个类URLError和HTTPError
#HTTPError是URLError的子类,HTTPError有异常状态码及异常原因,而URLError没有异常状态码
##URLError发生的原因主要有:1.连不上服务器。2.访问的URL不存在。3.没有网络。4.触发了HRRPError子类

import urllib.error
import urllib.request
try:
    urllib.request.urlopen("http://blog.csdn.net")
except urllib.error.URLError as e:
    if hasattr(e,"code"):
        print(e.code)
    if hasattr((e,"reason")):
        print(e.reason)

网友评论

登录后评论
0/500
评论
wsc449
+ 关注