【问题标题】:Netmiko SSH connect problem in cisco devices [duplicate]cisco设备中的Netmiko SSH连接问题[重复]
【发布时间】:2020-05-08 18:05:33
【问题描述】:

程序:

from netmiko import ConnectHandler

iosv_l2 = {
    'device_type': 'cisco_ios',
    'ip':   '192.168.122.50',
    'username': 'sagar',
    'password': 'sagar',

}

net_connect =ConnectHandler(**iosv_l2)
output =net_connect.send_command('show ip int brief')
print(output)

config_commands = [ 'int loop 0', 'ip addre 1.1.1.1 255.255.255.0']
output = net_connect.send_config_set(config_commands)
print (output)

错误:

Traceback (most recent call last):
  File "netmiko1", line 3, in <module>
    from netmiko import ConnectHandler
  File "/usr/local/lib/python2.7/dist-packages/netmiko/__init__.py", line 7, in <module>
    from netmiko.ssh_dispatcher import ConnectHandler
  File "/usr/local/lib/python2.7/dist-packages/netmiko/ssh_dispatcher.py", line 2, in <module>
    from netmiko.a10 import A10SSH
  File "/usr/local/lib/python2.7/dist-packages/netmiko/a10/__init__.py", line 1, in <module>
    from netmiko.a10.a10_ssh import A10SSH
  File "/usr/local/lib/python2.7/dist-packages/netmiko/a10/a10_ssh.py", line 3, in <module>
    from netmiko.cisco_base_connection import CiscoSSHConnection
  File "/usr/local/lib/python2.7/dist-packages/netmiko/cisco_base_connection.py", line 143
    msg = f"Login failed: {self.host}"
                                     ^
SyntaxError: invalid syntax

【问题讨论】:

    标签: python ssh syntax-error f-string netmiko


    【解决方案1】:

    此模块使用f-strings,仅在 Python 3.6 版本中添加。要解决此问题,请将 Python 升级到 3.6 或更高版本。您当前使用的是 2.7。

    Netmiko 的3.0.0 update 删除了对 Python 2.7 的所有支持。为了继续使用 Python 2.7,您必须降级到 2.4.2 版本。

    【讨论】:

      【解决方案2】:

      是的,Netmiko 3.x.x 需要 Python 3.6+,因此您需要将 Python 版本升级到该版本(或降级到 Netmiko 2.4.2)。

      【讨论】: