(1) 我们发起 HTTP 请求,有时会发生异常,如请求超时,登录密码错误,请求链接不存在等等,使用 urllib.request.URLError 可以捕获这些与 URL 相关的异常
(2) urllib.error.URLError 是一个异常类,如果我们使用 urlopen() 打开一个URL,打开失败就会抛出这个异常,失败的原因主要有:没有网络连接 、服务器连接失败 、找不到指定的服务器
(3) urllib.error.URLError 这个类包含了 code 和 reason 属性,code 即 HTTP 状态码,如 200,403,502 等,reason 用于描述失败的原因,通常用法如下:
import urllib.request import urllib.error try: urllib.request.urlopen('http://blog.csdn.net/cqcrek') except urllib.error.URLError as e: if hasattr(e, 'code'): print('连接服务器失败,错误代码:%s' % e.code) if hasattr(e, 'reason'): print('连接服务器失败,失败原因:%s' % e.reason) else: print('连接服务器失败,失败原因:%s' % e) else: print('OK')