python 捕獲異常後繼續執行

2021-09-28 18:46:29 字數 788 閱讀 3484

最近寫爬蟲,發現獲取的url鏈結中總會出現一些壞資料,即訪問後被拒絕,requests直接丟擲異常,導致爬蟲中斷。於是想找方法在捕獲異常後跳過異常url繼續執行程式

方法如下:

while

true

:try

: r=requests.get(url,timeout=5)

with

open

(path+

'/'+name+

".txt"

,'w'

)as myfile:

myfile.write(r.content)

myfile.close(

)except exception as ex:

template =

"an exception of type occurred. arguments:\n"

message = template.

format

(type

(ex)

.__name__, ex.args)

print

('\n'

+message)

break

finally

:break

首先外層乙個死迴圈,然後通過try……except捕獲異常。捕獲後處理完異常,然後通過return或者break跳出迴圈,繼續執行程式。

注意最後的finally,意思是無論是否捕獲到異常都執行後面的**,沒有則一條則無異常時會陷入死迴圈狀態

Python異常處理 跳過異常繼續執行

ython異常處理 跳過異常繼續執行 python一般使用try except 處理異常 try 可能會出現異常的 放在try下 code1 如果try內部任意一行 出現異常,直接跳轉至except,執行except下 code2 except code3 code4此方法只要有乙個異常,程式就不繼...

python異常捕獲 如何捕獲Python中的異常

python 提供了try except語句捕獲並處理異常,該異常處理語句的基本語法結構如下 try 可能產生異常的 塊 except error1,error2,as e 處理異常的 塊1 except error3,error4,as e 處理異常的 塊2該格式中,括起來的部分可以使用,也可以省...

python異常捕獲

python的異常處理如c c 的結構一樣。python用try.except.c c 則用try.catch.並不難理解。在對具體錯誤的獲取則有點不同,主要是語法的差異上。c 在catch後可生成相應乙個異常的類,然後可通過類物件獲取相關的錯誤資訊。而python則不同,它在獲取錯誤資訊有點奇怪,...