urllib.request 的异常处理语句
时间: 2023-12-13 09:04:29 浏览: 92
在使用 urllib.request 发送请求时,可以使用 try-except 语句来处理可能出现的异常。以下是一个示例:
```python
import urllib.request
import urllib.error
try:
response = urllib.request.urlopen('http://www.example.com')
except urllib.error.URLError as e:
if hasattr(e, 'reason'):
print('Failed to reach the server.')
print('Reason: ', e.reason)
elif hasattr(e, 'code'):
print('The server couldn\'t fulfill the request.')
print('Error code: ', e.code)
else:
print('Request succeeded.')
# 此处可以对 response 进行操作
```
在上述代码中,首先尝试使用 urllib.request.urlopen() 发送请求,如果请求成功,将响应存储在 response 变量中,并输出一条成功的消息。如果请求失败,则根据异常的类型输出相应的错误信息。
如果异常是 URLError 类型,说明出现了连接错误,可以通过 e.reason 来获取错误原因。如果异常是 HTTPError 类型,说明服务器返回了错误响应,可以通过 e.code 来获取响应的状态码。
阅读全文