python urllib2检查Http错误和urlerror

时间:2017-07-20 12:59:03

标签: python urllib

这是我的问题:

我的脚本中有8个链接,根据脚本的其他部分进行更改。在这个链接中,只有1个实际打开我需要的文件,其他7个可能引发404错误(http)或10061错误(连接被拒绝,所以URLerror)。

我希望我的代码能够执行此操作:

如果错误是404,则不执行任何操作

如果错误是10061,则不执行任何操作

如果http.headers有content.type' pdf',请继续下载。

到目前为止我编写的代码:

    try:
        response = urllib2.urlopen(link) 
    except urllib2.HTTPError, e:
        if e.code == 404:
            print '404'
    except urllib2.URLError, e:
            if '10061' not in e.args 
                #Download code here

1 个答案:

答案 0 :(得分:0)

嗯,看看你的代码和这3行你想要达到的目标应该是这样的:(未选中)

try:
    response = urllib2.urlopen(link) 
except urllib2.HTTPError, e:
    if e.code == 404:
        print '404'
except urllib2.URLError, e:
    if e.code == 10061:
        print '10061'
content_type = response.get_header('content.type', default=None)
if content_type == 'pdf':
     #Download code here