pexpect es un módulo de pitón popular para hacer diferentes tipos de tareas automatizadas. Diferentes tipos de aplicaciones interactivas como Telnet, SSH, FTP, etc., se puede automatizar con este módulo. Es un módulo Python puro, y no requiere un compilador C o TCL o espera extensiones como otros esperan módulos. Puede funcionar fácilmente usando un intérprete de Python solo. Este módulo se puede usar de dos maneras. Una forma es usar el correr() función, y otra forma es usar Aparecer clase. El correr() La función es fácil de usar que la clase de desove y realiza las tareas automatizadas rápidamente. El comando en particular o un programa puede ser ejecutado por el correr() función que devuelve la salida. Esta función se puede utilizar como alternativa al sistema operativo.sistema() función. El Aparecer la clase es más poderosa que la correr() función que puede generar un programa infantil, interactuar con él enviando entrada y esperando la respuesta. Este módulo se instala en Python3 de forma predeterminada. Las dos formas de usar este módulo se han mostrado en este tutorial.
Usando la función Run ()
Sintaxis:
La sintaxis del correr() La función se da a continuación. Tiene muchos argumentos para diversos fines. Pero los primeros 3 o 4 argumentos se usan principalmente. El primer argumento de esta función es obligatorio que toma el comando que esta función ejecutará. Puede devolver múltiples salidas. Si el Witexitstatus El argumento se usa con el FALSO valor, solo devolverá la salida del comando.
run (comando, timeout = 30, withexitStatus = false, event = none, extra_args = none, logFile = none, cwd = none, env = none, ** kwargs)Ejemplo-1: diferentes usos de la función run ()
Tres usos diferentes del correr() la función se ha mostrado en el siguiente script. El 'pwd'La salida del comando se ejecuta en el primero correr() función que mostrará la ruta de directorio de trabajo actual. A continuación, el correr() La función se utiliza para determinar los detalles de un archivo en particular, y el nombre de archivo se tomará del usuario. El tercero correr() la función se usa para hacer el ssh conexión y recuperar todos los archivos y carpetas de la web carpeta.
# Importar módulo PEXPECTProducción
La siguiente salida aparecerá después de ejecutar el script anterior. En la salida, doc1.py ha dado como nombre de archivo, y los detalles de este archivo han demostrado. A continuación, la lista de todos los archivos del web La carpeta ha demostrado usando ssh conexión.
Usando la clase de Spawn
La sintaxis de la clase de desove se da a continuación. El constructor de esta clase puede tomar muchos argumentos para muchos propósitos. El primer argumento es obligatorio que tomará el comando para la ejecución.
Class Spawn __init __ (self, command, args = [], timeOut = 30, maxread = 2000, Search Window Size = None, logFile = None, Cwd = None, Env = None)Ejemplo-2: Uso simple de la clase de desove
El uso simple de la clase de desove se ha mostrado en el siguiente script. El 'fecha'El comando se ha ejecutado aquí usando la clase de desigualidad. La salida del comando se recuperará creando el objeto de la clase de desove, y la salida se imprime en formato legible por humanos utilizando el descodificar() método.
# Importar módulo PEXPECTProducción
La siguiente salida aparecerá después de ejecutar el script anterior.
Ejemplo-3: lea el contenido del directorio usando la conexión SSH
Crear conexión SSH y leer la lista de todos los archivos y carpetas de un directorio en particular se ha mostrado en el siguiente script. Aquí, la contraseña del usuario definido se tomará del usuario para hacer la conexión SSH utilizando la clase de Spawn. Si la contraseña dada es incorrecta, el script se terminará mostrando un mensaje de error. Si la contraseña dada es correcta, pero el terminal no está definido, entonces el script mostrará el mensaje de éxito para la conexión, enviará el tipo de terminal y definirá el patrón esperado del símbolo del sistema. Si la contraseña es correcta y se define el terminal, el script mostrará el mensaje de éxito y el símbolo del sistema de shell.
# Importar módulo PEXPECTProducción
La siguiente salida aparecerá cuando el script anterior se ejecute con la contraseña incorrecta.
La siguiente salida aparecerá cuando el script anterior se ejecute con la contraseña correcta.
Conclusión
Pexpect es un módulo muy útil para los usuarios de Python que les ayuda a hacer sus tareas regulares automáticamente. Los usos muy básicos del módulo PEXPECT de Python se han descrito en este tutorial utilizando ejemplos fáciles para ayudar a los usuarios a comenzar a trabajar con este módulo.