napalm_ce 报错 No module named ‘netmiko.ssh_exception‘ 解决方案(随手记)
版本
netmiko 4.1.0
napalm latest
napalm-ce latest
python 3.11
报错
File "venv/lib/site-packages/napalm_ce/ce.py", line 34, in <module>
from netmiko.ssh_exception import NetMikoTimeoutException
ModuleNotFoundError: No module named 'netmiko.ssh_exception'
解决方案
进入到这个包,找到ce.py这个文件
一般目录是./venv/Lib/site-packages/napalm_ce/ce.py
将报错的行
from netmiko.ssh_exception import NetMikoTimeoutException
修改为
from netmiko.exceptions import NetMikoTimeoutException
原因
netmiko 4.x
之后,将ssh_exception
库移除了,并将内部的Exception函数全部重定向到了exceptions
中。
所以需要修改import的路径。
或者使用netmiko3.x
版本,也不会出现这个问题。
但是
napalm-huawei-vrp
是基于netmiko 4.1
制作的,为了能都使用,最好还是修改源代码。
具体issue
ISSUE:No module named ‘netmiko.ssh_exception’ as of netmiko>=4.1.1