我有一些代碼,這將使requests.get()
調用,這可能會以各種方式失敗。我想趕上requests
例外,但不關心呼叫失敗的原因。是否有可能捕獲請求的所有異常? (通常,對於一個模塊)
我想避免像
try:
r = requests.get(url)
except:
pass
代碼,因爲這將有可能捕獲異常不屬於requests
相關(在上面這種情況決不會是這樣,但如果有一些更多的代碼,這將是可能)。
requests
例外情況是documented但我不想列出所有這些。 是否有一種方法可以捕獲它們,例如requests
的某種通配符?(一般多 - 由一個模塊提供例外)
我也可以去像
try:
r = requests.get(url)
except Exception as e:
print(e)
,但我想避免分析e
過濾掉requests
例外。
注:這不是一個question on handling all but one exception的副本 - 我指定一整類有關的異常(並允許崩潰,如果別的東西拋出一個異常,這在我的情況下,將是一個錯誤)
對於'request',你總是可以使用'RequestsException',從中我可以看到所有的繼承。你不能使用在同一個模塊中定義的異常(你可以趕上em全部,並在'except'子句中過濾掉所有東西,但這可能會變得混亂) –
[處理所有操作,除了o ne exception](http://stackoverflow.com/questions/16123529/handling-all-but-one-exception) – Marat
@Marat:這不是重複的 - 我想要捕捉整個類的相關異常,而不是「catch除了一個以外的所有東西「(我只會鏈接兩個'except實例) – WoJ