python捕获异常后继续执行问题

 更新时间:2023年09月13日 14:32:42   作者:苏醒的怪兽  
这篇文章主要介绍了python捕获异常后继续执行问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

python捕获异常后继续执行

最近写爬虫,发现获取的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 {0} occurred. Arguments:\n{1!r}"
        message = template.format(type(ex).__name__, ex.args)
        print('\n'+message)
        break
    finally:
        break

首先外层一个死循环,然后通过try……except捕获异常。

捕获后处理完异常,然后通过return或者break跳出循环,继续执行程序。

注意最后的finally,意思是无论是否捕获到异常都执行后面的代码,没有则一条则无异常时会陷入死循环状态

python使用logging捕获异常后继续执行函数

使用python的logging模块可以在捕获异常后,记录异常且不退出程序:

例子:

import logging
logging.basicConfig(
    filename='new.log',  # 打印写入的文件
    filemode='a', )  # 写入日志的方法,a为追加,w为写入
try:
    a = 1 / 0
except Exception as e:
    logging.exception(e) # 会把报错的信息记录下来
print('other program') # 继续执行其他错误

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • matlab、python中矩阵的互相导入导出方式

    matlab、python中矩阵的互相导入导出方式

    这篇文章主要介绍了matlab、python中矩阵的互相导入导出方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • 使用python对文件中的单词进行提取的方法示例

    使用python对文件中的单词进行提取的方法示例

    这篇文章主要介绍了使用python对文件中的单词进行提取的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • Python实现读取TXT文件数据并存进内置数据库SQLite3的方法

    Python实现读取TXT文件数据并存进内置数据库SQLite3的方法

    这篇文章主要介绍了Python实现读取TXT文件数据并存进内置数据库SQLite3的方法,涉及Python针对txt文件的读取及sqlite3数据库的创建、插入、查询等相关操作技巧,需要的朋友可以参考下
    2017-08-08
  • python中sys.path.append的作用

    python中sys.path.append的作用

    本文主要介绍了python中sys.path.append的作用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-01-01
  • Pandas导入导出excel、csv、txt文件教程

    Pandas导入导出excel、csv、txt文件教程

    Pandas 是一个强大的数据分析和处理库,可以用来读取和处理多种数据格式,本文主要介绍了Pandas导入导出excel、csv、txt文件教程,具有一定的参考价值,感兴趣的可以了解一下
    2024-04-04
  • 使用Python实现Mysql数据库相关操作详解

    使用Python实现Mysql数据库相关操作详解

    这篇文章主要介绍了使用Python实现Mysql数据库相关操作详解,pymysql是Python中操作数据库的第三方模块,通过这个模块的相关方法,我们可以连接并且去操作mysql数据库,需要的朋友可以参考下
    2023-08-08
  • echarts动态获取Django数据的实现示例

    echarts动态获取Django数据的实现示例

    本文主要介绍了echarts动态获取Django数据的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • pytorch/transformers 最后一层不加激活函数的原因分析

    pytorch/transformers 最后一层不加激活函数的原因分析

    这里给大家解释一下为什么bert模型最后都不加激活函数,是因为损失函数选择的原因,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-01-01
  • pytorch Dataset,DataLoader产生自定义的训练数据案例

    pytorch Dataset,DataLoader产生自定义的训练数据案例

    这篇文章主要介绍了pytorch Dataset, DataLoader产生自定义的训练数据案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Python实现ping指定IP的示例

    Python实现ping指定IP的示例

    今天小编就为大家分享一篇Python实现ping指定IP的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06

最新评论