检查命令在Python中是否有问题?

Bru*_*dy' 1 python

我有这个命令

h = urllib.urlopen("http://google.com/")
Run Code Online (Sandbox Code Playgroud)

我如何检查它是否检索到我的错误,互联网关闭或我不期望的东西?

例如,像

如果错误打印'错误'

谢谢

Fel*_*ing 9

urllib.urlopen已弃用,因为它已在Python 3.0中删除.使用urllib2.urlopen而不是在文档中说:

引发URLError错误.

所以:

try:
    h = urllib2.urlopen("http://google.com/")
except urllib2.URLError as e:
    # do something with the exception e.g.
    print 'Error:', e.reason
Run Code Online (Sandbox Code Playgroud)

或只是一个(无意义的)错误消息:

try:
    h = urllib2.urlopen("http://google.com/")
except urllib2.URLError:
    print 'An error occurred.'
Run Code Online (Sandbox Code Playgroud)

URLError:

例外 urllib2.URLError

处理程序遇到问题时会引发此异常(或派生异常).它是的子类IOError.

原因出现
此错误的原因.它可以是消息字符串或另一个异常实例(socket.error对于远程URL,OSError对于本地URL).


您可能想要阅读有关错误和异常的信息.

  • @Shady:你可以使用`except:`而不提及要捕获的异常.这将捕获所有异常,但应该避免.通常,您应该始终指定要捕获的**错误. (2认同)