python3 爬取网页的异常处理

来源:互联网 发布:全国信息技术水平java 编辑:程序博客网 时间:2024/06/06 02:54

有时候python爬取的网页会出现异常,我们需要添加异常处理

我们主要说明一下URLError和HTTPError

参考博客:点击打开链接

URLError

首先解释下URLError可能产生的原因:

  • 网络无连接,即本机无法上网
  • 连接不到特定的服务器
  • 服务器不存在
HTTPError是URLError的子类,在你利用urlopen方法发出一个请求时,服务器上都会对应一个应答对象response,其中它包含一个数字”状态码”,具体每个状态码代表什么可以去网上查到。

from urllib import requestfrom urllib import errorif __name__ == '__main__':    target_url = 'http://www.dubai.com/'    try :        res = request.urlopen(target_url)    except error.URLError as e:        if hasattr(e,"code"):            print(e.code)        if hasattr(e,"reason"):            print(e.reason)        else:            print("OK")

因为HTTPerror是URLerror的子类,所以也可以被URLError获取到,我们也可以分开获取,再写一个except error.HTTPError as e:




原创粉丝点击