Python Telnetlib和连接超时

时间:2011-11-17 12:55:41

标签: python timeout telnetlib

我正在尝试制作一个脚本,它通过telnet连接到服务器。我正在使用python和telnetlib。我有超时工作的问题。我想在连接到主机时使用可选超时,这样如果主机不在线,我就会收到异常。

我已阅读python telnetlib文档,但我不知道我的代码有什么问题。

这是我的简单代码:

import telnetlib

host = 'hostname'
tn = telnetlib.Telnet(host, 23, 5) # port 23, timeout 45secs
print 'Connecting to', host
tn.close()

这是我的错误消息:

Exception exceptions.AttributeError: "Telnet instance has no attribute 'sock'" in      <bound method Telnet.__del__ of <telnetlib.Telnet instance at 0x7f269864b8c0>> ignored
Traceback (most recent call last):
File "test2.py", line 7, in <module>
tn = telnetlib.Telnet(host, 23, 5)
TypeError: __init__() takes at most 3 arguments (4 given)

1 个答案:

答案 0 :(得分:4)

您可能没有使用python 2.6或更高版本。从文档引用:

  

在2.6版中更改:添加了超时。