分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

八、urllib库(二)处理异常

发布时间:2023-09-06 01:57责任编辑:胡小海关键词:url

处理异常

urllib的error模块定义了由request模块产生的异常

1、URLError

URLError类来自urllib库的error模块,继承自OSError类,是error异常模块的基类,由request模块产生的异常都可以通过捕获这个类来处理

它具有一个属性:reason,返回的错误原因

打开一个不存在的网页,应该是会报错的,但是我们捕获了URLError异常,程序没有报错,而是输出了错误内容

2、HTTPError

它是URLError的子类,专门处理HTTP请求错误,有3个属性

code:返回HTTP状态码

reason:同父类一样,返回错误的原因

headers:返回请求头

 输出结果

由于URLError是HTTPError的父类,所有可以先捕获子类的错误,再捕获父类的错误,上面代码更好的写法:

这样就可以先捕获到HTTPError,如果不是HTTPError异常,就捕获URLError异常

reason有时候返回的不是一个字符串,可能是一个对象

reason属性是结果是socket.timeout类

八、urllib库(二)处理异常

原文地址:https://www.cnblogs.com/Mr-chenshuai/p/9127745.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved