鱼C论坛

 找回密码
 立即注册
查看: 1732|回复: 5

如何使程序忽略报错

[复制链接]
发表于 2023-9-24 10:28:20 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
是这样的,我写了一个持续爬虫的程序

但是我电脑有时网络不稳定,会导致报错(最近又有一个报错,不知道什么意思python <urlopen error [Errno -2] Name or service not known>)

然后他就会结束程序

我试着将所有代码部分try包裹起来
except中什么都不写


但是他报错还是会退出

请问有什么解决办法吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-9-24 10:28:27 | 显示全部楼层
为了使程序忽略报错,可以使用Python中的try/except语句块。但是,如果你不想让程序因为报错而停止运行,可以在except语句块中加入pass语句,它表示什么也不做,直接跳过这个异常。下面是一个示例代码:
import urllib.request
import time

while True:
    try:
        response = urllib.request.urlopen("http://www.example.com")
        # 这里是你的代码逻辑
        time.sleep(1)
    except:
        pass

在这个示例中,我们使用了一个while循环来持续运行程序。在try语句块中,我们打开了一个网页,并在except语句块中加入了pass语句,以忽略所有可能的异常。此外,我们还使用了time.sleep()函数来防止程序过于频繁地访问网页。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-9-24 10:28:36 | 显示全部楼层
要使程序在遇到报错时忽略错误并继续执行,可以在代码中使用异常处理语句,并确保适当地处理异常。

一种常用的方法是将整个爬虫循环放在一个 try-except 块中,以捕获任何异常并进行处理。可以在 except 块中添加适当的代码来处理特定的异常或记录错误信息,然后通过 continue 语句继续下一次循环。

以下是一个示例代码片段,演示了如何处理网络连接错误并继续循环:
import time
import urllib.error

while True:
    try:
        # 爬取网页的代码
        # ...

        # 如果成功爬取数据,则执行相应的操作
        # ...

        # 延时一段时间再进行下一次循环
        time.sleep(1)

    except urllib.error.URLError as e:
        # 处理特定的 URL 错误
        print("发生URL错误:", e)
        continue

    except Exception as e:
        # 处理其他异常
        print("发生其他异常:", e)
        continue

在这个示例中,如果出现 URLError 异常(比如你提到的 urlopen error [Errno -2] Name or service not known),程序将打印错误信息并跳过当前循环,继续执行下一次循环。

另外,你还可以根据实际情况在异常处理中添加更多的逻辑,例如记录错误日志、重试连接等。根据具体爬虫的需求和情况,可以进行适当的修改和调整。
如果问题已经解决,请设置最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-9-24 10:29:41 | 显示全部楼层
陶远航 发表于 2023-9-24 07:28
要使程序在遇到报错时忽略错误并继续执行,可以在代码中使用异常处理语句,并确保适当地处理异常。

一种 ...

我试试加continue
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-9-24 10:30:06 | 显示全部楼层
while True:
    try:
      #do_something
    except:
        pass#回到try
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-9-25 06:36:39 From FishC Mobile | 显示全部楼层
try:
    ........
except:
    pass
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-24 10:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表