[파이썬] pyautogui 키보드 및 마우스 이벤트 추적

PyAutoGUI는 파이썬의 유용한 라이브러리로서, 키보드 및 마우스 이벤트를 추적하고 제어할 수 있는 기능을 제공합니다. 이를 통해 사용자는 실시간으로 마우스 움직임, 클릭 및 키보드 입력을 실행하고 이해할 수 있습니다. 이 문서에서는 PyAutoGUI를 사용하여 키보드 및 마우스 이벤트를 추적하는 방법을 알아보겠습니다.

PyAutoGUI 설치하기

PyAutoGUI를 사용하려면 먼저 해당 라이브러리를 설치해야 합니다. 아래의 명령어를 사용하여 PyAutoGUI를 설치할 수 있습니다.

pip install pyautogui

마우스 이벤트 추적

PyAutoGUI를 사용하여 마우스 이벤트를 추적하는 방법은 매우 간단합니다. 다음 예제 코드를 통해 마우스 위치를 추적하고 클릭 이벤트를 처리하는 방법을 확인해 보세요.

import pyautogui

# 마우스 이벤트를 추적하기 위한 루프
while True:
    try:
        # 현재 마우스 위치 가져오기
        x, y = pyautogui.position()

        # 추적된 마우스 위치 출력
        print(f"마우스 위치: {x}, {y}")

        # 클릭 이벤트 처리
        if pyautogui.click():
            print("마우스 클릭 감지!")

    except KeyboardInterrupt:
        # Ctrl+C 키 입력 시 루프 종료
        break

위의 코드를 실행하면 마우스의 현재 위치를 실시간으로 출력하고, 마우스 클릭 이벤트가 감지될 때마다 메시지가 표시됩니다.

키보드 이벤트 추적

PyAutoGUI를 사용하여 키보드 이벤트를 추적하는 방법도 간단합니다. 키보드 이벤트는 keyboard 모듈을 사용하여 처리할 수 있습니다. 다음 예제 코드를 통해 키보드 입력에 대한 이벤트를 처리하는 방법을 확인해 보세요.

import pyautogui
from pynput import keyboard

# 키 입력을 처리하기 위한 콜백 함수
def on_press(key):
    # 처리할 키 입력을 지정
    if str(key) == "'q'":
        # 'q' 키를 누르면 프로그램 종료
        return False

    # 추적된 키 입력 출력
    print(f"키 입력: {str(key)}")

# 키보드 이벤트 리스너 생성
listener = keyboard.Listener(on_press=on_press)
listener.start()

# 키 입력 이벤트를 계속해서 처리함
while True:
    try:
        pass
    except KeyboardInterrupt:
        # Ctrl+C 키 입력 시 루프 종료
        break

위의 코드를 실행하면 키보드 입력에 대한 이벤트를 실시간으로 출력합니다. ‘q’ 키를 누르면 프로그램이 종료됩니다.

PyAutoGUI를 사용하여 키보드 및 마우스 이벤트를 추적하는 것은 매우 간단하며, 다양한 상황에서 유용하게 사용할 수 있습니다. 이를 통해 자동화, 게임 개발 등 다양한 프로젝트를 구현할 수 있습니다. PyAutoGUI 문서를 더 자세히 살펴보고, PyAutoGUI의 다른 기능들을 탐색해 보세요.