阅读《NetDevOps入门与实践》章节 10.1.3 netmiko
使用脚本: ssh_iosxr.py
由于手头没有Cisco IOS XR设备,也懒得在自己的eve-ng平台模拟~~
所以直接改了改脚本,使用手头有的Cisco IOS-XE、Cisco NX-OS、H3C和Netgear设备进行测试.
前3种设备测试修改后的脚本均很顺畅,单单测试Netgear时,遇到了问题,报错如下:
$ python3 ssh_netgear_by_Ross.py -H NetgearIP -u Username
Password:
Traceback (most recent call last):
File "/Users/ross/ssh_netgear_by_Ross.py", line 58, in <module>
stdout = net_connect.send_config_set(config_commands)
File "/usr/local/lib/python3.9/site-packages/netmiko/base_connection.py", line 1837, in send_config_set
output += self.config_mode(*cfg_mode_args)
File "/usr/local/lib/python3.9/site-packages/netmiko/netgear/netgear_prosafe_ssh.py", line 29, in config_mode
return super().config_mode(config_command=config_command, pattern=pattern)
File "/usr/local/lib/python3.9/site-packages/netmiko/cisco_base_connection.py", line 40, in config_mode
return super().config_mode(
File "/usr/local/lib/python3.9/site-packages/netmiko/base_connection.py", line 1728, in config_mode
if not re.search(pattern, output, flags=re_flags):
File "/usr/local/Cellar/python@3.9/3.9.1_2/Frameworks/Python.framework/Versions/3.9/lib/python3.9/re.py", line 201, in search
return _compile(pattern, flags).search(string)
File "/usr/local/Cellar/python@3.9/3.9.1_2/Frameworks/Python.framework/Versions/3.9/lib/python3.9/re.py", line 304, in _compile
p = sre_compile.compile(pattern, flags)
File "/usr/local/Cellar/python@3.9/3.9.1_2/Frameworks/Python.framework/Versions/3.9/lib/python3.9/sre_compile.py", line 764, in compile
p = sre_parse.parse(p, flags)
File "/usr/local/Cellar/python@3.9/3.9.1_2/Frameworks/Python.framework/Versions/3.9/lib/python3.9/sre_parse.py", line 962, in parse
raise source.error("unbalanced parenthesis")
re.error: unbalanced parenthesis at position 0
$
搜索引擎查了一下,发目前Stack Overflow上找到一例同样使用Netgear交换机报类似错误的帖子,但是没有解决方案:
why-i-am-getting-re-error-unbalanced-parenthesis-at-position-0-error-here
然后去了netmiko的issue页面尝试使用”netgear”关键字查了查,点开第一个内容,找到解决方法:



随后在我的笔记本上找到该文件,改之,解决
/usr/local/lib/python3.9/site-packages/netmiko/netgear/netgear_prosafe_ssh.py
上面是我电脑上该文件的路径,根据操作系统不同、Python的安装方式不同,该路径可能略有不同.
最后,上使用netmiko成功配置Netgear交换机的截图:

© 版权声明
文章版权归作者所有,未经允许请勿转载。如内容涉嫌侵权,请在本页底部进入<联系我们>进行举报投诉!
THE END
















暂无评论内容