[英]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.