Obtener una entrada de contraseña oculta

Resuelto Nacht asked hace 12 años • 7 respuestas

¿Sabes que en Linux, cuando intentas algunas cosas de Sudo, te pide que ingreses la contraseña y, mientras escribes, no se muestra nada en la ventana del terminal (no se muestra la contraseña)?

¿Hay alguna manera de hacer eso en Python? Estoy trabajando en un script que requiere información muy confidencial y me gustaría que esté oculta cuando la escribo.

En otras palabras, quiero obtener la contraseña del usuario sin mostrarla.

Nacht avatar Feb 09 '12 05:02 Nacht
Aceptado

Usar getpass.getpass():

from getpass import getpass
password = getpass()

Se puede pasar un mensaje opcional como parámetro; el valor predeterminado es "Password: ".

Tenga en cuenta que esta función requiere un terminal adecuado, por lo que puede desactivar el eco de los caracteres escritos; consulte "GetPassWarning: No se puede controlar el eco en el terminal" cuando se ejecuta desde IDLE para obtener más detalles.

Sven Marnach avatar Feb 08 '2012 22:02 Sven Marnach
import getpass

pswd = getpass.getpass('Password:')

getpass funciona en Linux, Windows y Mac.

Nafscript avatar Nov 08 '2013 07:11 Nafscript