我正在写一个宏,当我按下某个键时,它将在屏幕上点击某些点。time.sleep需要整数?
第一次按下按键,一切运行良好。
然而,任何其他按键导致错误:
time.sleep(0.1)
TypeError: an integer is required
下面是代码:
import win32api
import win32con
import time
import pythoncom
import pyHook
import os
def Click(x,y):
win32api.SetCursorPos((x,y))
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,x,y,0,0)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,x,y,0,0)
def DeleteRun(event):
Click(1250, 741)
time.sleep(0.1)
Click(649,261)
time.sleep(0.1)
Click(651, 348)
time.sleep(0.1)
Click(800, 442)
time.sleep(0.1)
Click(865, 612)
Click(20,20)
KeyGrabber = pyHook.HookManager()
KeyGrabber.KeyDown = DeleteRun
KeyGrabber.HookKeyboard()
pythoncom.PumpMessages()
似乎第一次DeleteRun
功能由pyHook
运行,time.sleep(
)接受浮动。
在以下任何函数调用中,似乎只接受整数。
这是什么造成的?
我不能等待5秒的鼠标安排!它应该节省时间!
规格:
- 蟒蛇2.7.2
- 的Windows 7(32)
你可以'输入time_safe'并使用'time_safe'代替'time'吗?也许pyHook正在用'time'类做一些事情。 – Blender 2012-03-18 21:47:47
没有成功,我很害怕。但我注意到它交替工作和失败。 – 2012-03-18 21:50:53
也许试试'特别是从时间导入睡眠'? – 2012-03-18 21:56:40