【发布时间】:2012-04-11 09:57:21
【问题描述】:
背景: 我正在拉取防火墙的连接表以建立一个顶级谈话者/听众列表。
在某些情况下,连接表有 200,000 多个条目。我正在使用 telnetlib 远程访问防火墙并获取连接表。我使用 read_until 来捕获数据。但是,当表大于 40,000 个条目时,它会挂起。当我杀死它时,我看到以下内容:
Traceback (most recent call last):
File "test2.py", line 152, in ?
main()
File "test2.py", line 120, in main
tmp_text = telnet.read_until(pager_text)
File "/usr/lib/python2.3/telnetlib.py", line 317, in read_until
self.process_rawq()
File "/usr/lib/python2.3/telnetlib.py", line 488, in process_rawq
self.cookedq = self.cookedq + buf[0]
KeyboardInterrupt
我是否遇到了某种缓冲?获取这些数据的更好方法是什么?
谢谢。
【问题讨论】: