Python pyautogui和计划不在一起工作

Python pyautogui和计划不在一起工作,python,schedule,pyautogui,Python,Schedule,Pyautogui,我正在写一个每10秒按一次键的程序。为此,我将使用pyautogui和schedule的组合 from pyautogui import press, typewrite, hotkey import schedule keystroke = "w" def keypress(): press(keystroke) schedule.every(10).seconds.do(keypress) 但当我运行这个时,什么也没发生。我等了10秒钟,但没有键入任何密钥。

我正在写一个每10秒按一次键的程序。为此,我将使用pyautogui和schedule的组合

from pyautogui import press, typewrite, hotkey
import schedule

keystroke = "w"

def keypress():
    press(keystroke)
schedule.every(10).seconds.do(keypress)

但当我运行这个时,什么也没发生。我等了10秒钟,但没有键入任何密钥。我做错了什么?

让我们一节一节地检查您的代码,看看是否可以确定问题所在

  • 您可以导入一些库
  • 您定义了一个希望每10秒运行一次的函数
  • 您告诉默认调度程序希望每10秒调用一次函数
  • 然后程序终止
有两个有点相关的问题:

  • 代码中没有任何地方告诉调度器运行任何计划的作业
  • 在运行任何计划作业之前,代码立即终止
要修复这些问题,您需要程序循环,让调度器检查并运行任何挂起的作业

下面的代码定义了一个简单的作业,并将其计划为每10秒运行一次。然后它每秒循环检查挂起的作业

导入计划
导入时间
定义作业():
打印(“正在运行…”)
计划。每(10)秒。完成(作业)
尽管如此:
schedule.run_pending()
时间。睡眠(1)
如果您只想让程序每n个时间单位循环并执行1个操作,那么调度模块就被过度杀死了。它更适用于复杂系统,其中有大量计划的操作都在不同的周期中运行