# 1 通常异常
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException, TimeoutException, ElementClickInterceptedException, ElementNotVisibleExceptiondriver = webdriver.Chrome()try:# 尝试执行的代码pass
except NoSuchElementException:# 针对错误类型1,对应的代码处理pass
except TimeoutException:# 针对错误类型2,对应的代码处理pass
except(ElementClickInterceptedException, ElementNotVisibleException):# 针对错误类型3和4,对应的代码处理pass
except Exception as e:# 打印错误信息print(e)
else:# 如果try块中没有异常,对应的代码处理pass
finally:# 无论是否出现异常,都会执行的代码print('无论是否有异常,都会执行的代码')
# 2 抛出异常:使用 raise 关键字来抛出异常
def divide(a, b):if b == 0:raise Exception("除数不能为零")return a / btry:divide(3, 0)
except Exception as e:print(e)
# 3 自定义异常类: 自定义异常类需要继承自 Exception 类。
class CustomError(Exception):def __init__(self, msg):self.msg = msgdef __str__(self):return self.msgdef add(a, b):if a < 0 or b < 0:raise CustomError("自定义的异常")return a + b
'''
参考:
【python】异常处理
https://blog.csdn.net/w3360701048/article/details/137504337
2024年Python最全python异常(概念、捕获、传递、抛出)_异常python(2)
https://blog.csdn.net/2401_84584796/article/details/138355865
Python异常处理:三种不同方法的探索与最佳实践
https://blog.csdn.net/weixin_45081575/article/details/134356343
Selenium异常集锦
https://www.cnblogs.com/FunTester/p/13844892.html
'''