Así que quiero mantener presionada la tecla c durante, digamos, 0.2 segundos, luego sin esperar ni un poco, presione el espacio y suéltelo sin demora (0.0 segundos) y para hacer eso pensé usar pyautogui.keyDown ("") y keyUp (" ") ayudaría, pero tiene un ligero retraso, así que cuando lo hago

pyautogui.keyDown("c")
pyautogui.keyUp("C")

Lo que hace es mantener presionada la tecla "c" durante unos segundos, pero no le di ningún retraso. Solo quiero que presione c durante 0.0 segundos, lo principal es

import pyautogui
import time
time.sleep(0.5)

pyautogui.keyDown("c")
time.sleep(0.2) # so it would put 0.2 second delay in it i didnt know it had a delay in itself
pyautogui.keyUp("c")
time.sleep(0.5)
pyautogui.keyDown("space")
pyautogui.keyUp("space")
time.sleep(0.5)
pyautogui.keyDown("c")
time.sleep(0.2)
pyautogui.keyUp("c")
time.sleep(0.5)
pyautogui.keyDown("space")
pyautogui.keyUp("space")

El time.sleep es el retraso que quiero que sea, pero tiene un retraso por sí solo sin el tiempo. Dormir, así que eso es demasiado para mí para cronometrar lo mío. Intenté hacer pyautogui.typewrite pero falla la mayoría de las veces, tal vez si hay como una espera por x segundos, por favor dime cómo hacerlo

0
oehxfudmf 23 ago. 2020 a las 00:15

1 respuesta

La mejor respuesta

Miré la documentación y aparentemente hay un retraso de .1 segundo entre los comandos pyautogui, para permitirle entrar en la operación manualmente en caso de fugas, documentado aquí: # a prueba de fallos. Advierten contra ello, pero es posible que pueda hacer esto:

import pyautogui
import time

KEY_C = "c"
KEY_SPACE = "space"

time.sleep(0.5)

pyautogui.FAILSAFE = False # danger zone
pyautogui.keyDown(KEY_C)
time.sleep(0.2)
pyautogui.keyUp(KEY_C)
pyautogui.keyDown(KEY_SPACE)
pyautogui.keyUp(KEY_SPACE)
pyautogui.FAILSAFE = True # out of danger

# do it again

time.sleep(0.5)
pyautogui.FAILSAFE = False
pyautogui.keyDown(KEY_C)
time.sleep(0.2)
pyautogui.keyUp(KEY_C)
pyautogui.keyDown(KEY_SPACE)
pyautogui.keyUp(KEY_SPACE)
pyautogui.FAILSAFE = True

0
RufusVS 23 ago. 2020 a las 00:01