import pythoncom, pyHook import time keys = [] mouse = [] lm = time.time() lk = time.time() def tofile(lst, filename): with open(filename, 'a') as file: file.write('\n'.join([str(val) for val in lst])+'\n') def OnKeyboardEvent(event): global keys, lk keys.append(time.time()) if len(keys) >= 1000 or time.time()-lk > 1000: lk = time.time() tofile(keys, 'key.log') keys = [] return True def OnMouseEvent(event): global mouse, lm mouse.append(time.time()) if len(mouse) >= 1000 or time.time()-lm > 1000: lm = time.time() tofile(mouse, 'mouse.log') mouse = [] return True while True: hm = pyHook.HookManager() hm.KeyUp = OnKeyboardEvent hm.MouseAllButtonsDown = OnMouseEvent hm.HookKeyboard() hm.HookMouse() pythoncom.PumpMessages()