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

Python:使HTTP错误(500)不停止脚本,python,try-catch,http-error,except,Python,Try Catch,Http Error,Except,这是我需要帮助的代码的基本部分。注意,我像上周一样学习了python。我不理解尝试和例外,我知道我需要什么,所以如果有人能帮助我,那就太好了 url = 'http://google.com/{0}/{1}'.format(variable, variable1) site = urllib.request.urlopen(url) 这不是真正的网站,但你知道的。现在,我在每个项目上运行一个循环超过5次,然后运行大约20个不同的项目。可以这么说 google.com/spider/(使用不同类

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

url = 'http://google.com/{0}/{1}'.format(variable, variable1)
site = urllib.request.urlopen(url)
这不是真正的网站,但你知道的。现在,我在每个项目上运行一个
循环
超过5次,然后运行大约20个不同的项目。可以这么说
google.com/spider/
(使用不同类型的spider运行5次)
google.com/dogs/
(使用不同类型的狗运行5次)等


现在,第二个
变量
在我循环的90%的项目上都是相同的,但其中1或2个有一些“类型”,但没有其他。所以我得到一个
http错误500
,因为该站点不存在。我该如何让它基本上跳过这个。这不是别的,我知道
错误500
不是我认为正确的错误,但我知道这些项目的页面不存在。那么,我如何设置它,使它在出现任何错误时跳过它呢

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

try:
    url = 'http://google.com/{0}/{1}'.format(variable, variable1)
    site = urllib.request.urlopen(url)
except Exception, ex:
    print "ERROR - " + str(ex)
您还可以捕获特定的异常-上面的代码将捕获任何异常(例如代码中的错误,而不是网络错误)

请参见此处了解更多信息: