2015-06-05 63 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