'''
爬虫异常处理
URLError
HTTPError:是URLError的子类,
所以如果URLError和HTTPError同时出现的话,要将HTTPError写在前面,URLError写在后面
'''
import urllib.request
import urllib.error
'''
URLError错误
'''
req = urllib.request.Request('http://www.12dfd3XXX.com')\
try:
response = urllib.request.urlopen(req)
except urllib.error.URLError as e:
print(e)
'''
HTTPError错误
'''
req = urllib.request.Request('http://www.google.com')\
try:
response = urllib.request.urlopen(req)
except urllib.error.HTTPError as e:
print(e.code)
'''
以下为推荐写法
使用hasattr()判断时候有某属性
'''
someurl = 'http://*********'
req = urllib.request.Request(someurl)
try:
response = urllib.request.urlopen(req)
except urllib.error.URLError as e:
if hasattr(e,'reason'):
print('Reason:',e.reason)
elif hasattr(e,'code'):
print('Error Code:',e.code)
else:
#everything is fine
Python:爬虫异常处理URLError & HTTPError
最新推荐文章于 2023-04-24 16:51:32 发布