python中的urlib2.URLError及其原因

2024-04-18 12:06:30 发布

您现在位置:Python中文网/ 问答频道 /正文

这个问题的标题可能有点混乱,但我真的不知道如何最好地表达它。。。 我发现了下面的代码块,它使用urllib2库从web上下载网页。你知道吗

import urllib2

def download(url):
    try:
        html = urllib2.urlopen(url).read()
    except urllib2.URLError as e:
        print 'Download error:', e.reason
        html = None
    return html

如果e.code恰好是404,那么e.reason只是一个空字符串,这意味着它完全不包含触发错误的信息,因此我不太理解在这里使用e.reason的意义。 似乎打印e更合理,但即使我将它改为简单的print e,它仍然会产生一些尴尬的结果:HTTP Error 404:冒号后面显然是一个空字符串。。。 所以在我看来,上述代码在异常处理方面有点笨拙。是这样吗?你知道吗


Tags: 字符串代码importweburl网页标题download