from pynput import mouse def on_move(x, y): print('pointer moved to {0}'.format((x,y))) def on_click(x, y, button, pressed): print('{0} at {1}'.format('pressed' if pressed else 'released', (x,y))) return False def on_scroll(x, y, dx, dy): print('scrolled {0} at {1}'.format('down' if dy < 0 else 'up', (x, y))) with mouse.Listener( on_move=on_move, on_click=on_click, on_scroll=on_scroll) as listener: listener.join()