gpt4 book ai didi

Python EXscript - 属性错误: 'str' object has no attribute 'connect'

转载 作者:行者123 更新时间:2023-12-01 04:41:20 25 4
gpt4 key购买 nike

我正在尝试让脚本能够使用 Python 和 Exscript 登录 Cisco 设备。

作为一个全新的人,我在处理 IP 地址部分时遇到了一个错误。

属性错误:“str”对象没有属性“connect”

我明白这意味着什么,但我不确定如何获取输入并将其设为对象。

Switch_IP = raw_input('Core Switch IP :')
print
print "Login Method"
print "============"
print "1.Telnet"
print "2.SSHv2"
print
Connection_Type = raw_input('Connection Type :')
Device_IP = raw_input('IP Address :')

conn = 'null'

if Connection_Type == '1':
conn = 'Telnet()'
elif Connection_Type == '2':
conn = 'SSH2()'

account = read_login()
conn.connect(Switch_IP)
conn.login(account)

conn.execute('term len 0')
conn.execute('term width 0')
conn.execute("show ip arp | i " + Device_IP)

f = open("ARP-Output-tmp.txt","w")
f.write(conn.response)
f.close()

它曾经工作过,但我不确定我做了什么来阻止它工作。

谢谢

最佳答案

您将 conn 设置为等于两个字符串之一:

if Connection_Type == '1':
conn = 'Telnet()'
elif Connection_Type == '2':
conn = 'SSH2()'

所以 'Telnet()'.connect'SSH2()'.connect 都可以工作。

如果您从某处导入了 SSH 或 Telnet 并假设它们是类,则删除单引号,您将创建一个实例,一旦类具有连接方法,该实例就应该可以工作。

 if Connection_Type == '1':
conn = Telnet()
elif Connection_Type == '2':
conn = SSH2()

关于Python EXscript - 属性错误: 'str' object has no attribute 'connect' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30672198/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com