pexpect for interactive parsing failed?

时间:2017-07-22 05:08:07

标签: python pexpect

我正在尝试解析设备的启动顺序。 我使用telnet连接到终端服务器,终端服务器将我连接到设备的串口。

以下脚本工作并登录,这意味着终端响应脚本& sendline:

import pexpect
child = pexpect.spawn ('telnet x.x.x.x yyyy')
child.expect ('login: ')
child.sendline ('anonymous')
child.expect ('Password:')
child.sendline ('noah@example.com')

以下失败:

import pexpect
child = pexpect.spawn ('telnet x.x.x.x yyyy')
child.expect ('Hit [Enter] to boot immediately, or space bar for command prompt.', timeout=300)
child.send ('\x20')
print child.before

我的目标是当设备启动时,它只是进行面向行的输出,我期望的字符串会在滚动的中间位置。

以上脚本无法匹配。 进一步调试后,“child.before”会在登录提示之前显示最后一行。失败的原因是什么?

1 个答案:

答案 0 :(得分:1)

宾果!转义角色是我所遗漏的。