网络爬虫--处理异常(5)

1.URLError

来自urllib来自error模块,他继承自OSError,是error异常模块的基类。用来补充request模块抛出的错误。

拥有一个属性reason,即返回错误的原因

from urllib import  request,error

try:
    response = request.urlopen('http://www.asd.com/index.htm')
except error.URLError as e:
    print(e.reason)

2.HTTPError

他是URLError的子类,用来处理HTTP请求错误。他有三个属性

code:返回的HTTP状态码

reason:返回错误的原因,有时候也返回对象socket.tineout

headers:返回请求头

from urllib import  request,error

try:
    response = request.urlopen('http://www.asd.com/index.htm')
except error.HTTPError as e: #先捕捉子类的
    print(e.reason,e.code,e.headers,sep='\n')
except error.URLError as e:  #再捕捉父类的异常
    print(e.reason)

 

 

 

 

 

 

 

 

 

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