python捕獲異常后繼續(xù)執(zhí)行問題
python捕獲異常后繼續(xù)執(zhí)行
最近寫爬蟲,發(fā)現(xiàn)獲取的URL鏈接中總會(huì)出現(xiàn)一些壞數(shù)據(jù),即訪問后被拒絕,requests直接拋出異常,導(dǎo)致爬蟲中斷。
于是想找方法在捕獲異常后跳過異常URL繼續(xù)執(zhí)行程序
方法如下:
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 {0} occurred. Arguments:\n{1!r}"
message = template.format(type(ex).__name__, ex.args)
print('\n'+message)
break
finally:
break首先外層一個(gè)死循環(huán),然后通過try……except捕獲異常。
捕獲后處理完異常,然后通過return或者break跳出循環(huán),繼續(xù)執(zhí)行程序。
注意最后的finally,意思是無論是否捕獲到異常都執(zhí)行后面的代碼,沒有則一條則無異常時(shí)會(huì)陷入死循環(huán)狀態(tài)
python使用logging捕獲異常后繼續(xù)執(zhí)行函數(shù)
使用python的logging模塊可以在捕獲異常后,記錄異常且不退出程序:
例子:
import logging
logging.basicConfig(
? ? filename='new.log', ?# 打印寫入的文件
? ? filemode='a', ) ?# 寫入日志的方法,a為追加,w為寫入
try:
? ? a = 1 / 0
except Exception as e:
? ? logging.exception(e) # 會(huì)把報(bào)錯(cuò)的信息記錄下來
print('other program') # 繼續(xù)執(zhí)行其他錯(cuò)誤總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
PyTorch分布式訓(xùn)練的實(shí)現(xiàn)
本文主要介紹了PyTorch分布式訓(xùn)練的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2026-01-01
4種Pandas高效讀取文件數(shù)據(jù)的完整方法指南
這篇文章主要為大家詳細(xì)介紹了4種Pandas高效讀取文件數(shù)據(jù)的完整方法,包括CSV文件,Excel文件,JSON文件和SQL,文中的示例代碼講解詳細(xì),有需要的小伙伴可以了解下2025-12-12
Pygame實(shí)現(xiàn)簡易版趣味小游戲之反彈球
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡易版趣味反彈球游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03
Python制作數(shù)據(jù)導(dǎo)入導(dǎo)出工具
正好最近在學(xué)習(xí)python,于是打算用python實(shí)現(xiàn)了數(shù)據(jù)導(dǎo)入導(dǎo)出工具,由于是新手,所以寫的有些不完善的地方還請(qǐng)見諒2015-07-07
Python PIL實(shí)現(xiàn)GIF壓縮工具
本文將結(jié)合wxPython的GUI框架和PIL(Python Imaging Library)的圖像處理能力編寫一個(gè)GIF壓縮工具,并提供了兩種壓縮方式,感興趣的小伙伴可以了解下2024-10-10
Python獲取Redis所有Key以及內(nèi)容的方法
今天小編就為大家分享一篇Python獲取Redis所有Key以及內(nèi)容的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-02-02
Pandas數(shù)據(jù)形狀df.shape的實(shí)現(xiàn)
本文主要介紹了Pandas數(shù)據(jù)形狀df.shape的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07

