¿Sabes cómo en Linux cuando intentas algunas cosas de Sudo te dice que ingreses la contraseña y, mientras escribes, no se muestra nada en la ventana del terminal (la contraseña no se muestra)?
¿Hay alguna manera de hacer eso en Python? Estoy trabajando en un script que requiere información tan confidencial y me gustaría que se oculte cuando lo estoy escribiendo.
En otras palabras, quiero obtener la contraseña del usuario sin mostrar la contraseña.
fuente
getpass()
es para que nadie pueda ver el código fuente y averiguar su contraseña con sólo leerlo, y nadie puede obtener su contraseña por sólo mirando por encima del hombro y la lectura de su contraseña fuera de la pantalla cuando se escribe en.getpass funciona en Linux, Windows y Mac.
fuente
Warning (from warnings module): File "C:\Python27\lib\getpass.py", line 92 return fallback_getpass(prompt, stream) GetPassWarning: Can not control echo on the terminal. Warning: Password input may be echoed.
en IDLE, pero funcionó bien en el símbolo del sistema, encontré la razón aquíimport sys
):getpass.getpass(
<cadena>,sys.stderr)
Use getpass para este propósito.
fuente
Este código imprimirá un asterisco en lugar de cada letra.
fuente
getpass
respuesta. Bien15.7 getpass - Entrada de contraseña portátil
Puedes leer más aquí
fuente
Actualización sobre la respuesta de @Ahmed ALaa
msvcrt solo para Windows, pero getch de PyPI debería funcionar para ambos (solo probé con Linux). También puede comentar / descomentar las dos líneas para que funcione para Windows.
fuente