高响应时间 - 使用pyautogui以编程方式移动鼠标

时间:2015-10-19 00:13:01

标签: python mouse mouselistener pyautogui

在python脚本中,pyautogui.moveRel(b, a)的响应时间目前为.1秒。这是这个功能的预定时间吗?如果是这样,有什么方法可以使用python或其他语言中的另一种技术缩短响应时间?我的目标响应时间约为0.01秒,即60HZ率。

2 个答案:

答案 0 :(得分:0)

检查响应时间的代码,以微秒为单位(0.01秒= 10000微秒):

import pyautogui
import datetime

for x in range(0, 9):
    start = datetime.datetime.now()
    pyautogui.moveRel(None, 50)
    end = datetime.datetime.now()

    elapsed_time = end - start

    print elapsed_time.microseconds

输出:

269017
112927
113071
113061
112761
112561
113115
112107
112448

这意味着使用这个库和Python大约需要0.1秒。所以我的建议是使用更深层次的编程语言,比如C ++。

在Windows中使用C ++刺激鼠标事件:https://stackoverflow.com/a/7492837/2104879

在Linux中使用C ++刺激鼠标事件:https://stackoverflow.com/a/8791599/2104879

答案 1 :(得分:0)

@mertyildiran获得的结果是可以预期的,因为PyAutoGUI在两次操作之间的默认暂停时间为failsafe

要加快速度,您可以将暂停设置为一个较低的值,甚至设置为零,如下所示:

pyautogui.PAUSE = 0