2015-06-05 65 views
0

这是我需要帮助的代码的基本部分。注意我像上周一样学习了python。我不明白尝试和例外情况,我知道我需要这些,所以如果有人能帮上忙,那就太棒了。Python:发生HTTP错误(500)不停止脚本

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

这不是真正的网站,但你明白了。现在我每个物品运行一次loop 5次以上,然后运行20个不同的物品。所以它说 google.com/spiders/(运行5次与diff类型的蜘蛛) google.com/dogs/(运行5次与diff类型的狗)等等。

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

回答

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

+1

感谢我知道了:)我会给予好评,但没有代表又不好意思 Ralph