首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Exscript的Python Telnet连接

使用Exscript的Python Telnet连接
EN

Stack Overflow用户
提问于 2014-02-07 18:50:12
回答 1查看 1.7K关注 0票数 1

我正在尝试使用以下代码连接到思科防火墙:

代码语言:javascript
复制
 from Exscript.util.interact import read_login
 from Exscript.protocols import Telnet

 cmd = "?"
 conn = Telnet()
 conn.connect('10.60.2.254')

 conn.get_password_prompt()
 conn.send('password')
 conn.execute(cmd)
 print conn.response
 conn.send('exit\r')               
 conn.close()  

但是我得到了这个错误:

代码语言:javascript
复制
File "C:\Python26\Lib\site-packages\Pythonwin\pywin\framework\scriptutils.py", line 326, in RunScript exec codeObject in __main__.__dict__

File "C:\Users\blablabla\Desktop\ciscopytest.py", line 13, in <module>
    conn.execute(cmd)

File "C:\Python26\lib\site-packages\exscript-development-py2.6.egg\Exscript\protocols\Protocol.py", line 888, in execute
    return self.expect_prompt()

File "C:\Python26\lib\site-packages\exscript-development-py2.6.egg\Exscript\protocols\Protocol.py", line 987, in expect_prompt
    result = self.expect(self.get_prompt())

File "C:\Python26\lib\site-packages\exscript-development-py2.6.egg\Exscript\protocols\Protocol.py", line 968, in expect
    result = self._expect(prompt)

File "C:\Python26\lib\site-packages\exscript-development-py2.6.egg\Exscript\protocols\Protocol.py", line 944, in _expect
    result = self._domatch(to_regexs(prompt), True)

File "C:\Python26\lib\site-packages\exscript-development-py2.6.egg\Exscript\protocols\Telnet.py", line 85, in _domatch
    raise TimeoutException(error)

TimeoutException: Error while waiting for response from device
EN

回答 1

Stack Overflow用户

发布于 2014-02-07 19:25:23

这可能是因为?不是一个实际的命令。它在不明确按Enter键的情况下显示帮助。

尝试执行以下操作,而不是conn.execute(cmd)

代码语言:javascript
复制
conn.send(cmd)
self.expect_prompt()

如果此操作不起作用,请在手动按?时粘贴设备的输出

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21625762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档