-2

pexpect ライブラリを使用してスイッチ ジュニパーに接続して、いくつかのインターフェイス情報を取得しようとしています。これが私のコードです。

import pexpect

child = pexpect.spawn('ssh root@10.171.23.246')
child.expect('login as: ')
child.sendline('root')
child.expect('password:')
child.sendline(mypassword)
child.expect('% ')
child.sendline('cli')
child.expect('> ')
child.sendline('show interface')

結果は次のとおりです。

Traceback (most recent call last):

  File "first_test.py", line 4, in <module>

    child.expect('login as: ')

  File "/usr/lib/python2.7/site-packages/pexpect.py", line 1311, in 
expect

    return self.expect_list(compiled_pattern_list, timeout, 
searchwindowsize)

  File "/usr/lib/python2.7/site-packages/pexpect.py", line 1325, in 
expect_list

    return self.expect_loop(searcher_re(pattern_list), timeout, 
searchwindowsize)

  File "/usr/lib/python2.7/site-packages/pexpect.py", line 1409, in 
expect_loop

    raise TIMEOUT (str(e) + '\n' + str(self))

pexpect.TIMEOUT: Timeout exceeded in read_nonblocking().

<pexpect.spawn object at 0x7fb21cfd5a50>

version: 2.3 ($Revision: 399 $)

command: /usr/bin/ssh

args: ['/usr/bin/ssh', 'root@10.171.23.246']

searcher: searcher_re:

    0: re.compile("login as: ")

buffer (last 100 chars): root@10.171.23.246's password:

before (last 100 chars): root@10.171.23.246's password:

after: <class 'pexpect.TIMEOUT'>

match: None

match_index: None

exitstatus: None

flag_eof: False

pid: 20230

child_fd: 3

closed: False

パスワードがスイッチに送信されていないようです。私は新しいpythonユーザーです。明確でない場合は申し訳ありません。スイッチに正しく接続するにはどうすればよいですか?

4

2 に答える 2