3 votos

Pyautogui no ingresa todos los caracteres al usar la función typewrite

Estamos tratando de automatizar el diálogo de SecurityAgent en el que estamos introduciendo la contraseña usando pyautogui en 10.13 OSx

contraseña = "12345678" usando

pyautogui.typewrite(contraseña)

esta función resolvió el problema. Sin embargo, estamos ejecutando este script varias veces en la misma máquina

No estoy seguro si es debido a la lentitud de la máquina o algo así, solo se están escribiendo 7 caracteres en la pantalla y luego se hace clic en enter, lo que falla el paso.

También intenté agregar un intervalo y un valor de pausa en pyautogui. Pero no ayuda. Aleatoriamente el script falla.

En lugar de escribir toda la secuencia, intenté ejecutar un bucle como se muestra a continuación

for c in contraseña:
  pyautogui.press(c)

Aún así, no ayudó. ¿Puede alguien ayudar con una solución alternativa?

2voto

Mayank Suman Puntos 11

Con AppleScript hice esto para usar en Automator:

https://gist.github.com/SuperHofstad/f826985ec536ff2d650699cb37a7fadc

set appPass to "CONTRASEÑA" as text

tell application "System Events"
    delay 0.5
    repeat until exists process "SecurityAgent"
        delay 0.5
    end repeat
    tell process "SecurityAgent"
        keystroke appPass
        key code 36
    end tell
end tell

0 votos

No es perfecto, pero el código es un comienzo. Puede que encuentre tiempo para mejorarlo en otro momento..

1voto

Luna Puntos 1

Puede que estés escribiendo muy rápido. Intenta pyautogui.typewrite(password, interval=0.2)

0 votos

Vota arriba para esta respuesta. Mi situación era similar a la del OP: en algunos casos al escribir una cadena, el primer carácter de la oración (que siempre son los mismos 2 caracteres) se perderá. Con la sugerencia anterior aplicada, el problema desapareció por completo inmediatamente. Conclusión: pyautogui.typewrite escribirá demasiado rápido, a veces, y el carácter duplicado se perderá como detección de pulsación de tecla duplicada.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X