Python telnetlib read_all挂起,直到超时
我有一些Python代码,通过telnet连接到OSPF守护进程(由Quagga运行),然后执行以下操作:Python telnetlib read_all挂起,直到超时,python,telnet,telnetlib,Python,Telnet,Telnetlib,我有一些Python代码,通过telnet连接到OSPF守护进程(由Quagga运行),然后执行以下操作: tn.write("show ip ospf database router\n") tn.write("exit\n") my_text = tn.read_all() 当show ip ospf database router的输出很小时,脚本工作正常,但当它很大(约73kb)时,代码在read_all()调用中冻结,直到超时 我的问题是:为什么会发生这种情况?是否存在read_al
tn.write("show ip ospf database router\n")
tn.write("exit\n")
my_text = tn.read_all()
当show ip ospf database router的输出很小时,脚本工作正常,但当它很大(约73kb)时,代码在read_all()调用中冻结,直到超时
我的问题是:为什么会发生这种情况?是否存在read_all可以处理的最大输出大小
我应该注意,如果我使用read\u very\u eager()而不是read\u all()的话,代码运行得很好
先谢谢你。
Santiago Vidal.您可以通过以下行控制输出的大小:
Telnet.set_debuglevel (debuglevel)
设置调试级别。debuglevel的值越高,得到的调试输出越多(在sys.stdout上)
例如:
tn.write("show ip ospf database router\n")
tn.write("exit\n")
my_text = tn.set_debuglevel(1000)
my_text = tn.read_all()