如何通过urlopen处理400 Bad请求?

时间:2018-02-21 13:54:08

标签: python parsing urllib2 bad-request

我使用这段代码生成各种统计信息:

uClient = urlopen(finalURL)
page = uClient.read()
uClient.close()
obj = json.loads(page)
return obj

我有一个需要生成的所有内容的列表,但是其中一些URL不再存在,但文件太大而无法手动执行。一旦它返回Bad请求,脚本就会出错,但我希望它只是传递那个URL,如果它是一个错误的请求并继续没有存在。

2 个答案:

答案 0 :(得分:1)

尝试使用异常处理

try:
    uClient = urlopen(finalURL)
    page = uClient.read()
    uClient.close()
    obj = json.loads(page)
    return obj
except urllib2.HTTPError as e:
    if e.code == 404:
        print "Not found"

答案 1 :(得分:1)

我试过@mkHun的这个异常处理:

COLOR

但不是使用ValueError,而是使用@ t.m.adam建议的urllib2.HTTPError,这最终解决了我的问题。谢谢大家!