繁体   English   中英

python-如何在空格键按下时暂停和取消暂停程序

[英]python - How to pause and unpause program on space bar presses

我正在尝试制作一个程序来重复发送消息,并且能够在按下空格键时暂停,而在再次按下空格键时不会暂停。 我不确定在程序运行时如何不断检查按键是否正常。 这是我的代码

import pyautogui
import random
import string
import time
phrase = str()
n = 0

while True:
    if n < 5:
        for i in range(random.randint(1,10)):
            letter = random.choice(string.ascii_letters)
            phrase = phrase + letter
        print(phrase)
        pyautogui.typewrite(phrase)
        pyautogui.press("enter")
        phrase = str()
        n = n + 1
        time.sleep(0.005+0.001*random.randint(1,10))
    else:
        pyautogui.keyDown("alt")
        pyautogui.press("tab")
        pyautogui.press("tab")
        pyautogui.keyUp("alt")
        n = 0

该答案表明您可以使用pyKeylogger 您还可以在openCV中使用cv2库。

这使用键盘库 不知道您要完成什么,但这可行。 它使用keyboard.on_key_press函数,您应该进一步了解它。 如果要使用键盘库或另一个库来检测按键,也应该使用该库来发送按键。 大多数检测按键的库也将发送按键,这将是更加一致的代码。

import keyboard
import pyautogui
import random
import string
import time

phrase = str()
n = 0


class Get(object):
    wait = False
    def do_this(self, e):
        self.wait = not self.wait

a = Get()
keyboard.on_press_key("space", a.do_this)
while True:
    if not a.wait:
        if n > 5:
            pyautogui.keyDown("alt")
            pyautogui.press("tab")
            pyautogui.press("tab")
            pyautogui.keyUp("alt")
            n = 0
        else:
            for i in range(random.randint(1,10)):
                letter = random.choice(string.ascii_letters)
                phrase = phrase + letter
            print(phrase)
            pyautogui.typewrite(phrase)
            pyautogui.press("enter")
            phrase = str()
            n = n + 1
            time.sleep(0.005+0.001*random.randint(1,10))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM