Python:使HTTP错误(500)不停止脚本

时间:2015-06-05 04:09:06

标签: python try-catch http-error except

这是我需要帮助的代码的基本部分。注意我上周学习了python。我不了解尝试和例外,我知道我需要的是什么,所以如果有人能提供帮助那就太棒了。

url = 'http://google.com/{0}/{1}'.format(variable, variable1)
site = urllib.request.urlopen(url)

那不是真正的网站,但你明白了。现在我每个项目运行loop超过5次,然后运行大约20个不同的项目。所以它说 google.com/spiders/(使用差异类型的蜘蛛运行5次) google.com/dogs/(与不同类型的狗一起运行5次)等。

现在第二个variable与我循环的90%的项目相同,但其中有1个或2个具有某些"类型"但不是其他人。所以我得到http error 500因为该网站不存在。我怎么做它基本上跳过它。它不是别的,我知道error 500并不是我认为的错误,但我知道这些项目的页面不存在。那么如何设置它以便在它出现任何错误时跳过它。

1 个答案:

答案 0 :(得分:0)

您可以在循环中使用try/except块,例如:

try:
    url = 'http://google.com/{0}/{1}'.format(variable, variable1)
    site = urllib.request.urlopen(url)
except Exception, ex:
    print "ERROR - " + str(ex)

您也可以捕获特定的异常 - 上面的代码会捕获任何异常(例如代码中的错误,而不是网络错误)

请点击此处了解详情:https://wiki.python.org/moin/HandlingExceptions