python - AttributeError: 'module' object has no attribute 'sendline'
怪我咯
怪我咯 2017-04-17 17:15:54
0
2
1190
怪我咯
怪我咯

走同样的路,发现不同的人生

reply all(2)
洪涛

Look at the result of dir below. There is no sendline method in the pexpect module, so AttributeError will be reported.

>>> import pexpect
>>> dir(pexpect)
['EOF', 'ExceptionPexpect', 'Expecter', 'PY3', 'TIMEOUT', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '__path__', '__revision__', '__version__', 'exceptions', 'expect', 'is_executable_file', 'pty_spawn', 'run', 'runu', 'searcher_re', 'searcher_string', 'spawn', 'spawnbase', 'spawnu', 'split_command_line', 'sys', 'utils', 'which']

Correct usage examples are as follows:

# This connects to the openbsd ftp site and
# downloads the recursive directory listing.
import pexpect
child = pexpect.spawn('ftp ftp.openbsd.org')
child.expect('Name .*: ')
child.sendline('anonymous')
child.expect('Password:')
child.sendline('noah@example.com')
child.expect('ftp> ')
child.sendline('lcd /tmp')
child.expect('ftp> ')
child.sendline('cd pub/OpenBSD')
child.expect('ftp> ')
child.sendline('get README')
child.expect('ftp> ')
child.sendline('bye')

To call the sendline method on the return value of pexpect.spawn(cmd), refer to: http://pexpect.readthedocs.org/en/stable/overview.html

伊谢尔伦

Pexpect on Windows
New in version 4.0: Windows support

Pexpect can be used on Windows to wait for a pattern to be produced by a child process, using pexpect.popen_spawn.PopenSpawn, or a file descriptor, using pexpect.fdpexpect.fdspawn. This should be considered experimental for now.

pexpect.spawn and pexpect.run() are not available on Windows, as they rely on Unix pseudoterminals (ptys). Cross platform code must not use these.

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template