Home  >  Q&A  >  body text

python - AttributeError: 'module' object has no attribute 'sendline'

怪我咯怪我咯2742 days ago1119

reply all(2)I'll reply

  • PHP中文网

    PHP中文网2017-04-17 17:17:54

    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

    reply
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 17:17:54

    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.

    reply
    0
  • Cancelreply